\hypertarget{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext}{}\doxysection{osgeo\+::proj\+::operation\+::Coordinate\+Operation\+Context Class Reference}
\label{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext}\index{osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}}


Context in which a coordinate operation is to be used.  




{\ttfamily \#include $<$coordinateoperation.\+hpp$>$}

\doxysubsection*{Public Types}
\begin{DoxyCompactItemize}
\item 
enum class \mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ae25c413da86a25712bd5d346a5ee2435}{Source\+Target\+CRSExtent\+Use}} \{ \mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ae25c413da86a25712bd5d346a5ee2435ab50339a10e1de285ac99d4c3990b8693}{NONE}}
, \mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ae25c413da86a25712bd5d346a5ee2435a6328e5e3186c227a021ef2ff77e40197}{BOTH}}
, \mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ae25c413da86a25712bd5d346a5ee2435aa0494c90519e4a08049470357751e736}{INTERSECTION}}
, \mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ae25c413da86a25712bd5d346a5ee2435add23747cdd223977e9003ea25f65913f}{SMALLEST}}
 \}
\item 
enum class \mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ae5ce8956694d47ae788d6508000528f4}{Spatial\+Criterion}} \{ \mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ae5ce8956694d47ae788d6508000528f4a24067032856029dd02ac5233ce4e6194}{STRICT\+\_\+\+CONTAINMENT}}
, \mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ae5ce8956694d47ae788d6508000528f4aa32fa6b5a93b8cad9f01276cd6e12b05}{PARTIAL\+\_\+\+INTERSECTION}}
 \}
\item 
enum class \mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a006e7a5c5b4b376cde501f184d458d11}{Grid\+Availability\+Use}} \{ \mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a006e7a5c5b4b376cde501f184d458d11afd050c6443b671247c61d45f29611f46}{USE\+\_\+\+FOR\+\_\+\+SORTING}}
, \mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a006e7a5c5b4b376cde501f184d458d11afaa8ad24232d00d2ed998ea553a18ff6}{DISCARD\+\_\+\+OPERATION\+\_\+\+IF\+\_\+\+MISSING\+\_\+\+GRID}}
, \mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a006e7a5c5b4b376cde501f184d458d11a87858df86863a3e04f4c722fa83dd0c2}{IGNORE\+\_\+\+GRID\+\_\+\+AVAILABILITY}}
, \mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a006e7a5c5b4b376cde501f184d458d11a659b801fd2fec26d0d10ebc8ff1bb8a7}{KNOWN\+\_\+\+AVAILABLE}}
 \}
\item 
enum class \mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ad2d059465e058f6001288334b814e406}{Intermediate\+CRSUse}} \{ \mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ad2d059465e058f6001288334b814e406af3fc827ade4b968e50406496907ef962}{ALWAYS}}
, \mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ad2d059465e058f6001288334b814e406af1345cc78e04abcc6ba457623cf3ffeb}{IF\+\_\+\+NO\+\_\+\+DIRECT\+\_\+\+TRANSFORMATION}}
, {\bfseries NEVER}
 \}
\end{DoxyCompactItemize}
\doxysubsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ab5d67de0f326a61b280db644784c66c9}\label{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ab5d67de0f326a61b280db644784c66c9}} 
const \mbox{\hyperlink{namespaceosgeo_1_1proj_1_1io_a6700bf116007d342bc35655d54d4c437}{io\+::\+Authority\+Factory\+Ptr}} \& {\bfseries get\+Authority\+Factory} () const
\begin{DoxyCompactList}\small\item\em Return the authority factory, or null. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a432affea4f039861316ee63fca8f9e06}\label{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a432affea4f039861316ee63fca8f9e06}} 
const \mbox{\hyperlink{namespaceosgeo_1_1proj_1_1metadata_a0d6b619c883f52d0e1f2b112c6f4dc96}{metadata\+::\+Extent\+Ptr}} \& {\bfseries get\+Area\+Of\+Interest} () const
\begin{DoxyCompactList}\small\item\em Return the desired area of interest, or null. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a16b81fb75577c1231ce8ca5cd1b4da0c}\label{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a16b81fb75577c1231ce8ca5cd1b4da0c}} 
void {\bfseries set\+Area\+Of\+Interest} (const \mbox{\hyperlink{namespaceosgeo_1_1proj_1_1metadata_a0d6b619c883f52d0e1f2b112c6f4dc96}{metadata\+::\+Extent\+Ptr}} \&extent)
\begin{DoxyCompactList}\small\item\em Set the desired area of interest, or null. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a470df2b244f0d73b17d80a218449dd36}\label{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a470df2b244f0d73b17d80a218449dd36}} 
double {\bfseries get\+Desired\+Accuracy} () const
\begin{DoxyCompactList}\small\item\em Return the desired accuracy (in metre), or 0. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_acdbaa4953d1df4936668918519aa0803}\label{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_acdbaa4953d1df4936668918519aa0803}} 
void {\bfseries set\+Desired\+Accuracy} (double accuracy)
\begin{DoxyCompactList}\small\item\em Set the desired accuracy (in metre), or 0. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a3e23b0d7c6142191723fc6962853717f}\label{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a3e23b0d7c6142191723fc6962853717f}} 
void {\bfseries set\+Allow\+Ballpark\+Transformations} (bool allow)
\begin{DoxyCompactList}\small\item\em Set whether ballpark transformations are allowed. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ada35bc86faefbbc76618ff950cfe72a6}\label{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ada35bc86faefbbc76618ff950cfe72a6}} 
bool {\bfseries get\+Allow\+Ballpark\+Transformations} () const
\begin{DoxyCompactList}\small\item\em Return whether ballpark transformations are allowed. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a4a6c3c85f53d0c0f8529e6c5bb1174ab}{set\+Source\+And\+Target\+CRSExtent\+Use}} (\mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ae25c413da86a25712bd5d346a5ee2435}{Source\+Target\+CRSExtent\+Use}} use)
\begin{DoxyCompactList}\small\item\em Set how source and target CRS extent should be used when considering if a transformation can be used (only takes effect if no area of interest is explicitly defined). \end{DoxyCompactList}\item 
\mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ae25c413da86a25712bd5d346a5ee2435}{Source\+Target\+CRSExtent\+Use}} \mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a118ed94dc60080c121e2ac5e40237fc8}{get\+Source\+And\+Target\+CRSExtent\+Use}} () const
\begin{DoxyCompactList}\small\item\em Return how source and target CRS extent should be used when considering if a transformation can be used (only takes effect if no area of interest is explicitly defined). \end{DoxyCompactList}\item 
void \mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ab6619ec472245132aa176b0adcdaa2ed}{set\+Spatial\+Criterion}} (\mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ae5ce8956694d47ae788d6508000528f4}{Spatial\+Criterion}} criterion)
\begin{DoxyCompactList}\small\item\em Set the spatial criterion to use when comparing the area of validity of coordinate operations with the area of interest / area of validity of source and target CRS. \end{DoxyCompactList}\item 
\mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ae5ce8956694d47ae788d6508000528f4}{Spatial\+Criterion}} \mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ad740274c429a4c147be0c669789bef04}{get\+Spatial\+Criterion}} () const
\begin{DoxyCompactList}\small\item\em Return the spatial criterion to use when comparing the area of validity of coordinate operations with the area of interest / area of validity of source and target CRS. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a5b17bb82c68767119a6f23a38a326490}{set\+Use\+PROJAlternative\+Grid\+Names}} (bool use\+PROJNames)
\begin{DoxyCompactList}\small\item\em Set whether PROJ alternative grid names should be substituted to the official authority names. \end{DoxyCompactList}\item 
bool \mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a6fd3bfd322148cf5247f1b534f100520}{get\+Use\+PROJAlternative\+Grid\+Names}} () const
\begin{DoxyCompactList}\small\item\em Return whether PROJ alternative grid names should be substituted to the official authority names. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a7a1ce9f73eeb2c70deaaecb2abab8ea2}{set\+Discard\+Superseded}} (bool discard)
\begin{DoxyCompactList}\small\item\em Set whether transformations that are superseded (but not deprecated) should be discarded. \end{DoxyCompactList}\item 
bool \mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ae85667a274ae677d019750e5248c5293}{get\+Discard\+Superseded}} () const
\begin{DoxyCompactList}\small\item\em Return whether transformations that are superseded (but not deprecated) should be discarded. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a790b840e731215721a739c895370954e}{set\+Grid\+Availability\+Use}} (\mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a006e7a5c5b4b376cde501f184d458d11}{Grid\+Availability\+Use}} use)
\begin{DoxyCompactList}\small\item\em Set how grid availability is used. \end{DoxyCompactList}\item 
\mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a006e7a5c5b4b376cde501f184d458d11}{Grid\+Availability\+Use}} \mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a913bed0b4cf5c8fba1adb61e6a6e257a}{get\+Grid\+Availability\+Use}} () const
\begin{DoxyCompactList}\small\item\em Return how grid availability is used. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a3858db917fbf703f2a31a035954d1ac3}{set\+Allow\+Use\+Intermediate\+CRS}} (\mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ad2d059465e058f6001288334b814e406}{Intermediate\+CRSUse}} use)
\begin{DoxyCompactList}\small\item\em Set whether an intermediate pivot CRS can be used for researching coordinate operations between a source and target CRS. \end{DoxyCompactList}\item 
\mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ad2d059465e058f6001288334b814e406}{Intermediate\+CRSUse}} \mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_afc0f358ddc6d4f24cbb764686ef9ece0}{get\+Allow\+Use\+Intermediate\+CRS}} () const
\begin{DoxyCompactList}\small\item\em Return whether an intermediate pivot CRS can be used for researching coordinate operations between a source and target CRS. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ab45e3617acc3081d35452a97947cde56}{set\+Intermediate\+CRS}} (const std\+::vector$<$ std\+::pair$<$ std\+::string, std\+::string $>$ $>$ \&intermediate\+CRSAuth\+Codes)
\begin{DoxyCompactList}\small\item\em Restrict the potential pivot CRSs that can be used when trying to build a coordinate operation between two CRS that have no direct operation. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_aad6029af9c6a72e202973962553194db}\label{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_aad6029af9c6a72e202973962553194db}} 
const std\+::vector$<$ std\+::pair$<$ std\+::string, std\+::string $>$ $>$ \& {\bfseries get\+Intermediate\+CRS} () const
\begin{DoxyCompactList}\small\item\em Return the potential pivot CRSs that can be used when trying to build a coordinate operation between two CRS that have no direct operation. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Static Public Member Functions}
\begin{DoxyCompactItemize}
\item 
static \mbox{\hyperlink{namespaceosgeo_1_1proj_1_1operation_a515bdd2c877b52861c1b1e423f5dd908}{Coordinate\+Operation\+Context\+NNPtr}} \mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a7601715f730654a71f5c2d943289e6ad}{create}} (const \mbox{\hyperlink{namespaceosgeo_1_1proj_1_1io_a6700bf116007d342bc35655d54d4c437}{io\+::\+Authority\+Factory\+Ptr}} \&authority\+Factory, const \mbox{\hyperlink{namespaceosgeo_1_1proj_1_1metadata_a0d6b619c883f52d0e1f2b112c6f4dc96}{metadata\+::\+Extent\+Ptr}} \&extent, double accuracy)
\begin{DoxyCompactList}\small\item\em Creates a context for a coordinate operation. \end{DoxyCompactList}\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
Context in which a coordinate operation is to be used. 

\begin{DoxyRemark}{Remarks}
Implements \mbox{[}\mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationFactory}{Coordinate\+Operation\+Factory}} \href{https://sis.apache.org/apidocs/org/apache/sis/referencing/operation/CoordinateOperationContext.html}{\texttt{ https\+://sis.\+apache.\+org/apidocs/org/apache/sis/referencing/operation/\+Coordinate\+Operation\+Context.\+html}}\mbox{]} from Apache SIS 
\end{DoxyRemark}


\doxysubsection{Member Enumeration Documentation}
\mbox{\Hypertarget{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a006e7a5c5b4b376cde501f184d458d11}\label{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a006e7a5c5b4b376cde501f184d458d11}} 
\index{osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}!GridAvailabilityUse@{GridAvailabilityUse}}
\index{GridAvailabilityUse@{GridAvailabilityUse}!osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}}
\doxysubsubsection{\texorpdfstring{GridAvailabilityUse}{GridAvailabilityUse}}
{\footnotesize\ttfamily enum class \mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a006e7a5c5b4b376cde501f184d458d11}{osgeo\+::proj\+::operation\+::\+Coordinate\+Operation\+Context\+::\+Grid\+Availability\+Use}}\hspace{0.3cm}{\ttfamily [strong]}}

Describe how grid availability is used. \begin{DoxyEnumFields}{Enumerator}
\raisebox{\heightof{T}}[0pt][0pt]{\index{USE\_FOR\_SORTING@{USE\_FOR\_SORTING}!osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}}\index{osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}!USE\_FOR\_SORTING@{USE\_FOR\_SORTING}}}\mbox{\Hypertarget{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a006e7a5c5b4b376cde501f184d458d11afd050c6443b671247c61d45f29611f46}\label{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a006e7a5c5b4b376cde501f184d458d11afd050c6443b671247c61d45f29611f46}} 
USE\+\_\+\+FOR\+\_\+\+SORTING&Grid availability is only used for sorting results. Operations where some grids are missing will be sorted last. \\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{DISCARD\_OPERATION\_IF\_MISSING\_GRID@{DISCARD\_OPERATION\_IF\_MISSING\_GRID}!osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}}\index{osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}!DISCARD\_OPERATION\_IF\_MISSING\_GRID@{DISCARD\_OPERATION\_IF\_MISSING\_GRID}}}\mbox{\Hypertarget{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a006e7a5c5b4b376cde501f184d458d11afaa8ad24232d00d2ed998ea553a18ff6}\label{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a006e7a5c5b4b376cde501f184d458d11afaa8ad24232d00d2ed998ea553a18ff6}} 
DISCARD\+\_\+\+OPERATION\+\_\+\+IF\+\_\+\+MISSING\+\_\+\+GRID&Completely discard an operation if a required grid is missing. \\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{IGNORE\_GRID\_AVAILABILITY@{IGNORE\_GRID\_AVAILABILITY}!osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}}\index{osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}!IGNORE\_GRID\_AVAILABILITY@{IGNORE\_GRID\_AVAILABILITY}}}\mbox{\Hypertarget{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a006e7a5c5b4b376cde501f184d458d11a87858df86863a3e04f4c722fa83dd0c2}\label{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a006e7a5c5b4b376cde501f184d458d11a87858df86863a3e04f4c722fa83dd0c2}} 
IGNORE\+\_\+\+GRID\+\_\+\+AVAILABILITY&Ignore grid availability at all. Results will be presented as if all grids were available. \\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{KNOWN\_AVAILABLE@{KNOWN\_AVAILABLE}!osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}}\index{osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}!KNOWN\_AVAILABLE@{KNOWN\_AVAILABLE}}}\mbox{\Hypertarget{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a006e7a5c5b4b376cde501f184d458d11a659b801fd2fec26d0d10ebc8ff1bb8a7}\label{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a006e7a5c5b4b376cde501f184d458d11a659b801fd2fec26d0d10ebc8ff1bb8a7}} 
KNOWN\+\_\+\+AVAILABLE&Results will be presented as if grids known to PROJ (that is registered in the grid\+\_\+alternatives table of its database) were available. Used typically when networking is enabled. \\
\hline

\end{DoxyEnumFields}
\mbox{\Hypertarget{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ad2d059465e058f6001288334b814e406}\label{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ad2d059465e058f6001288334b814e406}} 
\index{osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}!IntermediateCRSUse@{IntermediateCRSUse}}
\index{IntermediateCRSUse@{IntermediateCRSUse}!osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}}
\doxysubsubsection{\texorpdfstring{IntermediateCRSUse}{IntermediateCRSUse}}
{\footnotesize\ttfamily enum class \mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ad2d059465e058f6001288334b814e406}{osgeo\+::proj\+::operation\+::\+Coordinate\+Operation\+Context\+::\+Intermediate\+CRSUse}}\hspace{0.3cm}{\ttfamily [strong]}}

Describe if and how intermediate CRS should be used \begin{DoxyEnumFields}{Enumerator}
\raisebox{\heightof{T}}[0pt][0pt]{\index{ALWAYS@{ALWAYS}!osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}}\index{osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}!ALWAYS@{ALWAYS}}}\mbox{\Hypertarget{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ad2d059465e058f6001288334b814e406af3fc827ade4b968e50406496907ef962}\label{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ad2d059465e058f6001288334b814e406af3fc827ade4b968e50406496907ef962}} 
ALWAYS&Always search for intermediate CRS. \\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{IF\_NO\_DIRECT\_TRANSFORMATION@{IF\_NO\_DIRECT\_TRANSFORMATION}!osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}}\index{osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}!IF\_NO\_DIRECT\_TRANSFORMATION@{IF\_NO\_DIRECT\_TRANSFORMATION}}}\mbox{\Hypertarget{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ad2d059465e058f6001288334b814e406af1345cc78e04abcc6ba457623cf3ffeb}\label{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ad2d059465e058f6001288334b814e406af1345cc78e04abcc6ba457623cf3ffeb}} 
IF\+\_\+\+NO\+\_\+\+DIRECT\+\_\+\+TRANSFORMATION&Only attempt looking for intermediate CRS if there is no direct transformation available. \\
\hline

\end{DoxyEnumFields}
\mbox{\Hypertarget{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ae25c413da86a25712bd5d346a5ee2435}\label{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ae25c413da86a25712bd5d346a5ee2435}} 
\index{osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}!SourceTargetCRSExtentUse@{SourceTargetCRSExtentUse}}
\index{SourceTargetCRSExtentUse@{SourceTargetCRSExtentUse}!osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}}
\doxysubsubsection{\texorpdfstring{SourceTargetCRSExtentUse}{SourceTargetCRSExtentUse}}
{\footnotesize\ttfamily enum class \mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ae25c413da86a25712bd5d346a5ee2435}{osgeo\+::proj\+::operation\+::\+Coordinate\+Operation\+Context\+::\+Source\+Target\+CRSExtent\+Use}}\hspace{0.3cm}{\ttfamily [strong]}}

Specify how source and target CRS extent should be used to restrict candidate operations (only taken into account if no explicit area of interest is specified. \begin{DoxyEnumFields}{Enumerator}
\raisebox{\heightof{T}}[0pt][0pt]{\index{NONE@{NONE}!osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}}\index{osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}!NONE@{NONE}}}\mbox{\Hypertarget{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ae25c413da86a25712bd5d346a5ee2435ab50339a10e1de285ac99d4c3990b8693}\label{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ae25c413da86a25712bd5d346a5ee2435ab50339a10e1de285ac99d4c3990b8693}} 
NONE&Ignore CRS extent \\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{BOTH@{BOTH}!osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}}\index{osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}!BOTH@{BOTH}}}\mbox{\Hypertarget{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ae25c413da86a25712bd5d346a5ee2435a6328e5e3186c227a021ef2ff77e40197}\label{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ae25c413da86a25712bd5d346a5ee2435a6328e5e3186c227a021ef2ff77e40197}} 
BOTH&Test coordinate operation extent against both CRS extent. \\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{INTERSECTION@{INTERSECTION}!osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}}\index{osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}!INTERSECTION@{INTERSECTION}}}\mbox{\Hypertarget{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ae25c413da86a25712bd5d346a5ee2435aa0494c90519e4a08049470357751e736}\label{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ae25c413da86a25712bd5d346a5ee2435aa0494c90519e4a08049470357751e736}} 
INTERSECTION&Test coordinate operation extent against the intersection of both CRS extent. \\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{SMALLEST@{SMALLEST}!osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}}\index{osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}!SMALLEST@{SMALLEST}}}\mbox{\Hypertarget{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ae25c413da86a25712bd5d346a5ee2435add23747cdd223977e9003ea25f65913f}\label{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ae25c413da86a25712bd5d346a5ee2435add23747cdd223977e9003ea25f65913f}} 
SMALLEST&Test coordinate operation against the smallest of both CRS extent. \\
\hline

\end{DoxyEnumFields}
\mbox{\Hypertarget{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ae5ce8956694d47ae788d6508000528f4}\label{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ae5ce8956694d47ae788d6508000528f4}} 
\index{osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}!SpatialCriterion@{SpatialCriterion}}
\index{SpatialCriterion@{SpatialCriterion}!osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}}
\doxysubsubsection{\texorpdfstring{SpatialCriterion}{SpatialCriterion}}
{\footnotesize\ttfamily enum class \mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ae5ce8956694d47ae788d6508000528f4}{osgeo\+::proj\+::operation\+::\+Coordinate\+Operation\+Context\+::\+Spatial\+Criterion}}\hspace{0.3cm}{\ttfamily [strong]}}

Spatial criterion to restrict candidate operations. \begin{DoxyEnumFields}{Enumerator}
\raisebox{\heightof{T}}[0pt][0pt]{\index{STRICT\_CONTAINMENT@{STRICT\_CONTAINMENT}!osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}}\index{osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}!STRICT\_CONTAINMENT@{STRICT\_CONTAINMENT}}}\mbox{\Hypertarget{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ae5ce8956694d47ae788d6508000528f4a24067032856029dd02ac5233ce4e6194}\label{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ae5ce8956694d47ae788d6508000528f4a24067032856029dd02ac5233ce4e6194}} 
STRICT\+\_\+\+CONTAINMENT&The area of validity of transforms should strictly contain the are of interest. \\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{PARTIAL\_INTERSECTION@{PARTIAL\_INTERSECTION}!osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}}\index{osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}!PARTIAL\_INTERSECTION@{PARTIAL\_INTERSECTION}}}\mbox{\Hypertarget{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ae5ce8956694d47ae788d6508000528f4aa32fa6b5a93b8cad9f01276cd6e12b05}\label{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ae5ce8956694d47ae788d6508000528f4aa32fa6b5a93b8cad9f01276cd6e12b05}} 
PARTIAL\+\_\+\+INTERSECTION&The area of validity of transforms should at least intersect the area of interest. \\
\hline

\end{DoxyEnumFields}


\doxysubsection{Member Function Documentation}
\mbox{\Hypertarget{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a7601715f730654a71f5c2d943289e6ad}\label{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a7601715f730654a71f5c2d943289e6ad}} 
\index{osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}!create@{create}}
\index{create@{create}!osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}}
\doxysubsubsection{\texorpdfstring{create()}{create()}}
{\footnotesize\ttfamily \mbox{\hyperlink{namespaceosgeo_1_1proj_1_1operation_a515bdd2c877b52861c1b1e423f5dd908}{Coordinate\+Operation\+Context\+NNPtr}} osgeo\+::proj\+::operation\+::\+Coordinate\+Operation\+Context\+::create (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{namespaceosgeo_1_1proj_1_1io_a6700bf116007d342bc35655d54d4c437}{io\+::\+Authority\+Factory\+Ptr}} \&}]{authority\+Factory,  }\item[{const \mbox{\hyperlink{namespaceosgeo_1_1proj_1_1metadata_a0d6b619c883f52d0e1f2b112c6f4dc96}{metadata\+::\+Extent\+Ptr}} \&}]{extent,  }\item[{double}]{accuracy }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Creates a context for a coordinate operation. 

If a non null authority\+Factory is provided, the resulting context should not be used simultaneously by more than one thread.

If authority\+Factory-\/\texorpdfstring{$>$}{>}get\+Authority() is the empty string, then coordinate operations from any authority will be searched, with the restrictions set in the authority\+\_\+to\+\_\+authority\+\_\+preference database table. If authority\+Factory-\/\texorpdfstring{$>$}{>}get\+Authority() is set to \char`\"{}any\char`\"{}, then coordinate operations from any authority will be searched If authority\+Factory-\/\texorpdfstring{$>$}{>}get\+Authority() is a non-\/empty string different of \char`\"{}any\char`\"{}, then coordinate operations will be searched only in that authority namespace.


\begin{DoxyParams}{Parameters}
{\em authority\+Factory} & Authority factory, or null if no database lookup is allowed. Use io\+::authority\+Factory\+::create(context, std\+::string()) to allow all authorities to be used. \\
\hline
{\em extent} & Area of interest, or null if none is known. \\
\hline
{\em accuracy} & Maximum allowed accuracy in metre, as specified in or 0 to get best accuracy. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
a new context. 
\end{DoxyReturn}
\mbox{\Hypertarget{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_afc0f358ddc6d4f24cbb764686ef9ece0}\label{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_afc0f358ddc6d4f24cbb764686ef9ece0}} 
\index{osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}!getAllowUseIntermediateCRS@{getAllowUseIntermediateCRS}}
\index{getAllowUseIntermediateCRS@{getAllowUseIntermediateCRS}!osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}}
\doxysubsubsection{\texorpdfstring{getAllowUseIntermediateCRS()}{getAllowUseIntermediateCRS()}}
{\footnotesize\ttfamily \mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ad2d059465e058f6001288334b814e406}{Coordinate\+Operation\+Context\+::\+Intermediate\+CRSUse}} osgeo\+::proj\+::operation\+::\+Coordinate\+Operation\+Context\+::get\+Allow\+Use\+Intermediate\+CRS (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const}



Return whether an intermediate pivot CRS can be used for researching coordinate operations between a source and target CRS. 

Concretely if in the database there is an operation from A to C (or C to A), and another one from C to B (or B to C), but no direct operation between A and B, setting this parameter to ALWAYS/\+IF\+\_\+\+NO\+\_\+\+DIRECT\+\_\+\+TRANSFORMATION, allow chaining both operations.

The default is IF\+\_\+\+NO\+\_\+\+DIRECT\+\_\+\+TRANSFORMATION. \mbox{\Hypertarget{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ae85667a274ae677d019750e5248c5293}\label{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ae85667a274ae677d019750e5248c5293}} 
\index{osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}!getDiscardSuperseded@{getDiscardSuperseded}}
\index{getDiscardSuperseded@{getDiscardSuperseded}!osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}}
\doxysubsubsection{\texorpdfstring{getDiscardSuperseded()}{getDiscardSuperseded()}}
{\footnotesize\ttfamily bool osgeo\+::proj\+::operation\+::\+Coordinate\+Operation\+Context\+::get\+Discard\+Superseded (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const}



Return whether transformations that are superseded (but not deprecated) should be discarded. 

The default is true. \mbox{\Hypertarget{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a913bed0b4cf5c8fba1adb61e6a6e257a}\label{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a913bed0b4cf5c8fba1adb61e6a6e257a}} 
\index{osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}!getGridAvailabilityUse@{getGridAvailabilityUse}}
\index{getGridAvailabilityUse@{getGridAvailabilityUse}!osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}}
\doxysubsubsection{\texorpdfstring{getGridAvailabilityUse()}{getGridAvailabilityUse()}}
{\footnotesize\ttfamily \mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a006e7a5c5b4b376cde501f184d458d11}{Coordinate\+Operation\+Context\+::\+Grid\+Availability\+Use}} osgeo\+::proj\+::operation\+::\+Coordinate\+Operation\+Context\+::get\+Grid\+Availability\+Use (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const}



Return how grid availability is used. 

The default is USE\+\_\+\+FOR\+\_\+\+SORTING. \mbox{\Hypertarget{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a118ed94dc60080c121e2ac5e40237fc8}\label{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a118ed94dc60080c121e2ac5e40237fc8}} 
\index{osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}!getSourceAndTargetCRSExtentUse@{getSourceAndTargetCRSExtentUse}}
\index{getSourceAndTargetCRSExtentUse@{getSourceAndTargetCRSExtentUse}!osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}}
\doxysubsubsection{\texorpdfstring{getSourceAndTargetCRSExtentUse()}{getSourceAndTargetCRSExtentUse()}}
{\footnotesize\ttfamily \mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ae25c413da86a25712bd5d346a5ee2435}{Coordinate\+Operation\+Context\+::\+Source\+Target\+CRSExtent\+Use}} osgeo\+::proj\+::operation\+::\+Coordinate\+Operation\+Context\+::get\+Source\+And\+Target\+CRSExtent\+Use (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const}



Return how source and target CRS extent should be used when considering if a transformation can be used (only takes effect if no area of interest is explicitly defined). 

The default is \mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ae25c413da86a25712bd5d346a5ee2435add23747cdd223977e9003ea25f65913f}{Coordinate\+Operation\+Context\+::\+Source\+Target\+CRSExtent\+Use\+::\+SMALLEST}}. \mbox{\Hypertarget{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ad740274c429a4c147be0c669789bef04}\label{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ad740274c429a4c147be0c669789bef04}} 
\index{osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}!getSpatialCriterion@{getSpatialCriterion}}
\index{getSpatialCriterion@{getSpatialCriterion}!osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}}
\doxysubsubsection{\texorpdfstring{getSpatialCriterion()}{getSpatialCriterion()}}
{\footnotesize\ttfamily \mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ae5ce8956694d47ae788d6508000528f4}{Coordinate\+Operation\+Context\+::\+Spatial\+Criterion}} osgeo\+::proj\+::operation\+::\+Coordinate\+Operation\+Context\+::get\+Spatial\+Criterion (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const}



Return the spatial criterion to use when comparing the area of validity of coordinate operations with the area of interest / area of validity of source and target CRS. 

The default is STRICT\+\_\+\+CONTAINMENT. \mbox{\Hypertarget{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a6fd3bfd322148cf5247f1b534f100520}\label{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a6fd3bfd322148cf5247f1b534f100520}} 
\index{osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}!getUsePROJAlternativeGridNames@{getUsePROJAlternativeGridNames}}
\index{getUsePROJAlternativeGridNames@{getUsePROJAlternativeGridNames}!osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}}
\doxysubsubsection{\texorpdfstring{getUsePROJAlternativeGridNames()}{getUsePROJAlternativeGridNames()}}
{\footnotesize\ttfamily bool osgeo\+::proj\+::operation\+::\+Coordinate\+Operation\+Context\+::get\+Use\+PROJAlternative\+Grid\+Names (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const}



Return whether PROJ alternative grid names should be substituted to the official authority names. 

The default is true. \mbox{\Hypertarget{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a3858db917fbf703f2a31a035954d1ac3}\label{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a3858db917fbf703f2a31a035954d1ac3}} 
\index{osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}!setAllowUseIntermediateCRS@{setAllowUseIntermediateCRS}}
\index{setAllowUseIntermediateCRS@{setAllowUseIntermediateCRS}!osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}}
\doxysubsubsection{\texorpdfstring{setAllowUseIntermediateCRS()}{setAllowUseIntermediateCRS()}}
{\footnotesize\ttfamily void osgeo\+::proj\+::operation\+::\+Coordinate\+Operation\+Context\+::set\+Allow\+Use\+Intermediate\+CRS (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ad2d059465e058f6001288334b814e406}{Intermediate\+CRSUse}}}]{use }\end{DoxyParamCaption})}



Set whether an intermediate pivot CRS can be used for researching coordinate operations between a source and target CRS. 

Concretely if in the database there is an operation from A to C (or C to A), and another one from C to B (or B to C), but no direct operation between A and B, setting this parameter to ALWAYS/\+IF\+\_\+\+NO\+\_\+\+DIRECT\+\_\+\+TRANSFORMATION, allow chaining both operations.

The current implementation is limited to researching one intermediate step.

By default, with the IF\+\_\+\+NO\+\_\+\+DIRECT\+\_\+\+TRANSFORMATION strategy, all potential C candidates will be used if there is no direct transformation. \mbox{\Hypertarget{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a7a1ce9f73eeb2c70deaaecb2abab8ea2}\label{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a7a1ce9f73eeb2c70deaaecb2abab8ea2}} 
\index{osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}!setDiscardSuperseded@{setDiscardSuperseded}}
\index{setDiscardSuperseded@{setDiscardSuperseded}!osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}}
\doxysubsubsection{\texorpdfstring{setDiscardSuperseded()}{setDiscardSuperseded()}}
{\footnotesize\ttfamily void osgeo\+::proj\+::operation\+::\+Coordinate\+Operation\+Context\+::set\+Discard\+Superseded (\begin{DoxyParamCaption}\item[{bool}]{discard }\end{DoxyParamCaption})}



Set whether transformations that are superseded (but not deprecated) should be discarded. 

The default is true. \mbox{\Hypertarget{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a790b840e731215721a739c895370954e}\label{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a790b840e731215721a739c895370954e}} 
\index{osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}!setGridAvailabilityUse@{setGridAvailabilityUse}}
\index{setGridAvailabilityUse@{setGridAvailabilityUse}!osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}}
\doxysubsubsection{\texorpdfstring{setGridAvailabilityUse()}{setGridAvailabilityUse()}}
{\footnotesize\ttfamily void osgeo\+::proj\+::operation\+::\+Coordinate\+Operation\+Context\+::set\+Grid\+Availability\+Use (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a006e7a5c5b4b376cde501f184d458d11}{Grid\+Availability\+Use}}}]{use }\end{DoxyParamCaption})}



Set how grid availability is used. 

The default is USE\+\_\+\+FOR\+\_\+\+SORTING. \mbox{\Hypertarget{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ab45e3617acc3081d35452a97947cde56}\label{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ab45e3617acc3081d35452a97947cde56}} 
\index{osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}!setIntermediateCRS@{setIntermediateCRS}}
\index{setIntermediateCRS@{setIntermediateCRS}!osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}}
\doxysubsubsection{\texorpdfstring{setIntermediateCRS()}{setIntermediateCRS()}}
{\footnotesize\ttfamily void osgeo\+::proj\+::operation\+::\+Coordinate\+Operation\+Context\+::set\+Intermediate\+CRS (\begin{DoxyParamCaption}\item[{const std\+::vector$<$ std\+::pair$<$ std\+::string, std\+::string $>$ $>$ \&}]{intermediate\+CRSAuth\+Codes }\end{DoxyParamCaption})}



Restrict the potential pivot CRSs that can be used when trying to build a coordinate operation between two CRS that have no direct operation. 


\begin{DoxyParams}{Parameters}
{\em intermediate\+CRSAuth\+Codes} & a vector of (auth\+\_\+name, code) that can be used as potential pivot RS \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a4a6c3c85f53d0c0f8529e6c5bb1174ab}\label{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a4a6c3c85f53d0c0f8529e6c5bb1174ab}} 
\index{osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}!setSourceAndTargetCRSExtentUse@{setSourceAndTargetCRSExtentUse}}
\index{setSourceAndTargetCRSExtentUse@{setSourceAndTargetCRSExtentUse}!osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}}
\doxysubsubsection{\texorpdfstring{setSourceAndTargetCRSExtentUse()}{setSourceAndTargetCRSExtentUse()}}
{\footnotesize\ttfamily void osgeo\+::proj\+::operation\+::\+Coordinate\+Operation\+Context\+::set\+Source\+And\+Target\+CRSExtent\+Use (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ae25c413da86a25712bd5d346a5ee2435}{Source\+Target\+CRSExtent\+Use}}}]{use }\end{DoxyParamCaption})}



Set how source and target CRS extent should be used when considering if a transformation can be used (only takes effect if no area of interest is explicitly defined). 

The default is \mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ae25c413da86a25712bd5d346a5ee2435add23747cdd223977e9003ea25f65913f}{Coordinate\+Operation\+Context\+::\+Source\+Target\+CRSExtent\+Use\+::\+SMALLEST}}. \mbox{\Hypertarget{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ab6619ec472245132aa176b0adcdaa2ed}\label{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ab6619ec472245132aa176b0adcdaa2ed}} 
\index{osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}!setSpatialCriterion@{setSpatialCriterion}}
\index{setSpatialCriterion@{setSpatialCriterion}!osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}}
\doxysubsubsection{\texorpdfstring{setSpatialCriterion()}{setSpatialCriterion()}}
{\footnotesize\ttfamily void osgeo\+::proj\+::operation\+::\+Coordinate\+Operation\+Context\+::set\+Spatial\+Criterion (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_ae5ce8956694d47ae788d6508000528f4}{Spatial\+Criterion}}}]{criterion }\end{DoxyParamCaption})}



Set the spatial criterion to use when comparing the area of validity of coordinate operations with the area of interest / area of validity of source and target CRS. 

The default is STRICT\+\_\+\+CONTAINMENT. \mbox{\Hypertarget{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a5b17bb82c68767119a6f23a38a326490}\label{classosgeo_1_1proj_1_1operation_1_1CoordinateOperationContext_a5b17bb82c68767119a6f23a38a326490}} 
\index{osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}!setUsePROJAlternativeGridNames@{setUsePROJAlternativeGridNames}}
\index{setUsePROJAlternativeGridNames@{setUsePROJAlternativeGridNames}!osgeo::proj::operation::CoordinateOperationContext@{osgeo::proj::operation::CoordinateOperationContext}}
\doxysubsubsection{\texorpdfstring{setUsePROJAlternativeGridNames()}{setUsePROJAlternativeGridNames()}}
{\footnotesize\ttfamily void osgeo\+::proj\+::operation\+::\+Coordinate\+Operation\+Context\+::set\+Use\+PROJAlternative\+Grid\+Names (\begin{DoxyParamCaption}\item[{bool}]{use\+PROJNames }\end{DoxyParamCaption})}



Set whether PROJ alternative grid names should be substituted to the official authority names. 

This only has effect is an authority factory with a non-\/null database context has been attached to this context.

If set to false, it is still possible to obtain later the substitution by using \mbox{\hyperlink{classosgeo_1_1proj_1_1io_1_1PROJStringFormatter_a0d456c69a6eb6f6c18ca1a27e9db62b0}{io\+::\+PROJString\+Formatter\+::create()}} with a non-\/null database context.

The default is true. 

The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item 
include/proj/coordinateoperation.\+hpp\item 
src/iso19111/operation/coordinateoperationfactory.\+cpp\end{DoxyCompactItemize}
