\hypertarget{parammappings_8hpp_source}{}\doxysection{parammappings.\+hpp}
\label{parammappings_8hpp_source}\index{src/iso19111/operation/parammappings.hpp@{src/iso19111/operation/parammappings.hpp}}

\begin{DoxyCode}{0}
\DoxyCodeLine{1 \textcolor{comment}{/******************************************************************************}}
\DoxyCodeLine{2 \textcolor{comment}{ *}}
\DoxyCodeLine{3 \textcolor{comment}{ * Project:  PROJ}}
\DoxyCodeLine{4 \textcolor{comment}{ * Purpose:  ISO19111:2019 implementation}}
\DoxyCodeLine{5 \textcolor{comment}{ * Author:   Even Rouault <even dot rouault at spatialys dot com>}}
\DoxyCodeLine{6 \textcolor{comment}{ *}}
\DoxyCodeLine{7 \textcolor{comment}{ ******************************************************************************}}
\DoxyCodeLine{8 \textcolor{comment}{ * Copyright (c) 2018, Even Rouault <even dot rouault at spatialys dot com>}}
\DoxyCodeLine{9 \textcolor{comment}{ *}}
\DoxyCodeLine{10 \textcolor{comment}{ * Permission is hereby granted, free of charge, to any person obtaining a}}
\DoxyCodeLine{11 \textcolor{comment}{ * copy of this software and associated documentation files (the "{}Software"{}),}}
\DoxyCodeLine{12 \textcolor{comment}{ * to deal in the Software without restriction, including without limitation}}
\DoxyCodeLine{13 \textcolor{comment}{ * the rights to use, copy, modify, merge, publish, distribute, sublicense,}}
\DoxyCodeLine{14 \textcolor{comment}{ * and/or sell copies of the Software, and to permit persons to whom the}}
\DoxyCodeLine{15 \textcolor{comment}{ * Software is furnished to do so, subject to the following conditions:}}
\DoxyCodeLine{16 \textcolor{comment}{ *}}
\DoxyCodeLine{17 \textcolor{comment}{ * The above copyright notice and this permission notice shall be included}}
\DoxyCodeLine{18 \textcolor{comment}{ * in all copies or substantial portions of the Software.}}
\DoxyCodeLine{19 \textcolor{comment}{ *}}
\DoxyCodeLine{20 \textcolor{comment}{ * THE SOFTWARE IS PROVIDED "{}AS IS"{}, WITHOUT WARRANTY OF ANY KIND, EXPRESS}}
\DoxyCodeLine{21 \textcolor{comment}{ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,}}
\DoxyCodeLine{22 \textcolor{comment}{ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL}}
\DoxyCodeLine{23 \textcolor{comment}{ * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER}}
\DoxyCodeLine{24 \textcolor{comment}{ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING}}
\DoxyCodeLine{25 \textcolor{comment}{ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER}}
\DoxyCodeLine{26 \textcolor{comment}{ * DEALINGS IN THE SOFTWARE.}}
\DoxyCodeLine{27 \textcolor{comment}{ ****************************************************************************/}}
\DoxyCodeLine{28 }
\DoxyCodeLine{29 \textcolor{preprocessor}{\#ifndef PARAMMAPPINGS\_HPP}}
\DoxyCodeLine{30 \textcolor{preprocessor}{\#define PARAMMAPPINGS\_HPP}}
\DoxyCodeLine{31 }
\DoxyCodeLine{32 \textcolor{preprocessor}{\#ifndef FROM\_PROJ\_CPP}}
\DoxyCodeLine{33 \textcolor{preprocessor}{\#define FROM\_PROJ\_CPP}}
\DoxyCodeLine{34 \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{35 }
\DoxyCodeLine{36 \textcolor{preprocessor}{\#include "{}proj/coordinateoperation.hpp"{}}}
\DoxyCodeLine{37 \textcolor{preprocessor}{\#include "{}proj/util.hpp"{}}}
\DoxyCodeLine{38 }
\DoxyCodeLine{39 \textcolor{comment}{// -\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/}}
\DoxyCodeLine{40 }
\DoxyCodeLine{41 NS\_PROJ\_START}
\DoxyCodeLine{42 \textcolor{keyword}{namespace }operation \{}
\DoxyCodeLine{43 }
\DoxyCodeLine{44 \textcolor{comment}{// -\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/}}
\DoxyCodeLine{45 }
\DoxyCodeLine{47 }
\DoxyCodeLine{48 \textcolor{keyword}{extern} \textcolor{keyword}{const} \textcolor{keywordtype}{char} *WKT1\_LATITUDE\_OF\_ORIGIN;}
\DoxyCodeLine{49 \textcolor{keyword}{extern} \textcolor{keyword}{const} \textcolor{keywordtype}{char} *WKT1\_CENTRAL\_MERIDIAN;}
\DoxyCodeLine{50 \textcolor{keyword}{extern} \textcolor{keyword}{const} \textcolor{keywordtype}{char} *WKT1\_SCALE\_FACTOR;}
\DoxyCodeLine{51 \textcolor{keyword}{extern} \textcolor{keyword}{const} \textcolor{keywordtype}{char} *WKT1\_FALSE\_EASTING;}
\DoxyCodeLine{52 \textcolor{keyword}{extern} \textcolor{keyword}{const} \textcolor{keywordtype}{char} *WKT1\_FALSE\_NORTHING;}
\DoxyCodeLine{53 \textcolor{keyword}{extern} \textcolor{keyword}{const} \textcolor{keywordtype}{char} *WKT1\_STANDARD\_PARALLEL\_1;}
\DoxyCodeLine{54 \textcolor{keyword}{extern} \textcolor{keyword}{const} \textcolor{keywordtype}{char} *WKT1\_STANDARD\_PARALLEL\_2;}
\DoxyCodeLine{55 \textcolor{keyword}{extern} \textcolor{keyword}{const} \textcolor{keywordtype}{char} *WKT1\_LATITUDE\_OF\_CENTER;}
\DoxyCodeLine{56 \textcolor{keyword}{extern} \textcolor{keyword}{const} \textcolor{keywordtype}{char} *WKT1\_LONGITUDE\_OF\_CENTER;}
\DoxyCodeLine{57 \textcolor{keyword}{extern} \textcolor{keyword}{const} \textcolor{keywordtype}{char} *WKT1\_AZIMUTH;}
\DoxyCodeLine{58 \textcolor{keyword}{extern} \textcolor{keyword}{const} \textcolor{keywordtype}{char} *WKT1\_RECTIFIED\_GRID\_ANGLE;}
\DoxyCodeLine{59 }
\DoxyCodeLine{60 \textcolor{keyword}{struct }ParamMapping \{}
\DoxyCodeLine{61     \textcolor{keyword}{const} \textcolor{keywordtype}{char} *wkt2\_name;}
\DoxyCodeLine{62     \textcolor{keyword}{const} \textcolor{keywordtype}{int} epsg\_code;}
\DoxyCodeLine{63     \textcolor{keyword}{const} \textcolor{keywordtype}{char} *wkt1\_name;}
\DoxyCodeLine{64     \textcolor{keyword}{const} common::UnitOfMeasure::Type unit\_type;}
\DoxyCodeLine{65     \textcolor{keyword}{const} \textcolor{keywordtype}{char} *proj\_name;}
\DoxyCodeLine{66 \};}
\DoxyCodeLine{67 }
\DoxyCodeLine{68 \textcolor{keyword}{struct }MethodMapping \{}
\DoxyCodeLine{69     \textcolor{keyword}{const} \textcolor{keywordtype}{char} *wkt2\_name;}
\DoxyCodeLine{70     \textcolor{keyword}{const} \textcolor{keywordtype}{int} epsg\_code;}
\DoxyCodeLine{71     \textcolor{keyword}{const} \textcolor{keywordtype}{char} *wkt1\_name;}
\DoxyCodeLine{72     \textcolor{keyword}{const} \textcolor{keywordtype}{char} *proj\_name\_main;}
\DoxyCodeLine{73     \textcolor{keyword}{const} \textcolor{keywordtype}{char} *proj\_name\_aux;}
\DoxyCodeLine{74     \textcolor{keyword}{const} ParamMapping *\textcolor{keyword}{const} *params;}
\DoxyCodeLine{75 \};}
\DoxyCodeLine{76 }
\DoxyCodeLine{77 \textcolor{keyword}{extern} \textcolor{keyword}{const} ParamMapping paramLatitudeNatOrigin;}
\DoxyCodeLine{78 }
\DoxyCodeLine{79 \textcolor{keyword}{const} MethodMapping *getProjectionMethodMappings(\textcolor{keywordtype}{size\_t} \&nElts);}
\DoxyCodeLine{80 \textcolor{keyword}{const} MethodMapping *getOtherMethodMappings(\textcolor{keywordtype}{size\_t} \&nElts);}
\DoxyCodeLine{81 }
\DoxyCodeLine{82 \textcolor{keyword}{struct }MethodNameCode \{}
\DoxyCodeLine{83     \textcolor{keyword}{const} \textcolor{keywordtype}{char} *name;}
\DoxyCodeLine{84     \textcolor{keywordtype}{int} epsg\_code;}
\DoxyCodeLine{85 \};}
\DoxyCodeLine{86 }
\DoxyCodeLine{87 \textcolor{keyword}{const} MethodNameCode *getMethodNameCodes(\textcolor{keywordtype}{size\_t} \&nElts);}
\DoxyCodeLine{88 }
\DoxyCodeLine{89 \textcolor{keyword}{struct }ParamNameCode \{}
\DoxyCodeLine{90     \textcolor{keyword}{const} \textcolor{keywordtype}{char} *name;}
\DoxyCodeLine{91     \textcolor{keywordtype}{int} epsg\_code;}
\DoxyCodeLine{92 \};}
\DoxyCodeLine{93 }
\DoxyCodeLine{94 \textcolor{keyword}{const} ParamNameCode *getParamNameCodes(\textcolor{keywordtype}{size\_t} \&nElts);}
\DoxyCodeLine{95 }
\DoxyCodeLine{96 \textcolor{keyword}{const} MethodMapping *getMapping(\textcolor{keywordtype}{int} epsg\_code) \textcolor{keyword}{noexcept};}
\DoxyCodeLine{97 \textcolor{keyword}{const} MethodMapping *getMappingFromWKT1(\textcolor{keyword}{const} std::string \&wkt1\_name) \textcolor{keyword}{noexcept};}
\DoxyCodeLine{98 \textcolor{keyword}{const} MethodMapping *getMapping(\textcolor{keyword}{const} \textcolor{keywordtype}{char} *wkt2\_name) \textcolor{keyword}{noexcept};}
\DoxyCodeLine{99 \textcolor{keyword}{const} MethodMapping *getMapping(\textcolor{keyword}{const} OperationMethod *method) \textcolor{keyword}{noexcept};}
\DoxyCodeLine{100 std::vector<const MethodMapping *>}
\DoxyCodeLine{101 getMappingsFromPROJName(\textcolor{keyword}{const} std::string \&projName);}
\DoxyCodeLine{102 \textcolor{keyword}{const} ParamMapping *getMapping(\textcolor{keyword}{const} MethodMapping *mapping,}
\DoxyCodeLine{103                                \textcolor{keyword}{const} OperationParameterNNPtr \&param);}
\DoxyCodeLine{104 \textcolor{keyword}{const} ParamMapping *getMappingFromWKT1(\textcolor{keyword}{const} MethodMapping *mapping,}
\DoxyCodeLine{105                                        \textcolor{keyword}{const} std::string \&wkt1\_name);}
\DoxyCodeLine{106 }
\DoxyCodeLine{108 }
\DoxyCodeLine{109 \textcolor{comment}{// -\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/}}
\DoxyCodeLine{110 }
\DoxyCodeLine{111 \} \textcolor{comment}{// namespace operation}}
\DoxyCodeLine{112 NS\_PROJ\_END}
\DoxyCodeLine{113 }
\DoxyCodeLine{114 \textcolor{preprocessor}{\#endif }\textcolor{comment}{// PARAMMAPPINGS\_HPP}}

\end{DoxyCode}
