aboutsummaryrefslogtreecommitdiff
path: root/development/reference/datatypes.html
diff options
context:
space:
mode:
Diffstat (limited to 'development/reference/datatypes.html')
-rw-r--r--development/reference/datatypes.html2275
1 files changed, 2275 insertions, 0 deletions
diff --git a/development/reference/datatypes.html b/development/reference/datatypes.html
new file mode 100644
index 00000000..40e65259
--- /dev/null
+++ b/development/reference/datatypes.html
@@ -0,0 +1,2275 @@
+<!DOCTYPE html>
+<html class="writer-html5" lang="en" >
+<head>
+ <meta charset="utf-8" /><meta name="generator" content="Docutils 0.17.1: http://docutils.sourceforge.net/" />
+
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+ <title>Data types &mdash; PROJ 9.0.0 documentation</title>
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/css/theme.css" type="text/css" />
+ <link rel="shortcut icon" href="../../_static/favicon.png"/>
+ <link rel="canonical" href="https://proj.orgdevelopment/reference/datatypes.html"/>
+ <!--[if lt IE 9]>
+ <script src="../../_static/js/html5shiv.min.js"></script>
+ <![endif]-->
+
+ <script data-url_root="../../" id="documentation_options" src="../../_static/documentation_options.js"></script>
+ <script src="../../_static/jquery.js"></script>
+ <script src="../../_static/underscore.js"></script>
+ <script src="../../_static/doctools.js"></script>
+ <script async="async" src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script>
+ <script src="../../_static/js/theme.js"></script>
+ <link rel="author" title="About these documents" href="../../about.html" />
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="Functions" href="functions.html" />
+ <link rel="prev" title="Macros" href="macros.html" />
+</head>
+
+<body class="wy-body-for-nav">
+ <div class="wy-grid-for-nav">
+ <nav data-toggle="wy-nav-shift" class="wy-nav-side">
+ <div class="wy-side-scroll">
+ <div class="wy-side-nav-search" style="background: #353130" >
+ <a href="../../index.html">
+ <img src="../../_static/logo.png" class="logo" alt="Logo"/>
+ </a>
+ <div class="version">
+ 9.0.0
+ </div>
+<div role="search">
+ <form id="rtd-search-form" class="wy-form" action="../../search.html" method="get">
+ <input type="text" name="q" placeholder="Search docs" />
+ <input type="hidden" name="check_keywords" value="yes" />
+ <input type="hidden" name="area" value="default" />
+ </form>
+</div>
+ </div><div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu">
+ <ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../about.html">About</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../news.html">News</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../download.html">Download</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../install.html">Installation</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../usage/index.html">Using PROJ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../apps/index.html">Applications</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../operations/index.html">Coordinate operations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../resource_files.html">Resource files</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../geodesic.html">Geodesic calculations</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../index.html">Development</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../quickstart.html">Quick start</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../transformations.html">Transformations</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../errorhandling.html">Error handling</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="index.html">Reference</a><ul class="current">
+<li class="toctree-l3"><a class="reference internal" href="macros.html">Macros</a></li>
+<li class="toctree-l3 current"><a class="current reference internal" href="#">Data types</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="#transformation-objects">Transformation objects</a></li>
+<li class="toctree-l4"><a class="reference internal" href="#dimensional-coordinates">2 dimensional coordinates</a></li>
+<li class="toctree-l4"><a class="reference internal" href="#id1">3 dimensional coordinates</a></li>
+<li class="toctree-l4"><a class="reference internal" href="#spatiotemporal-coordinate-types">Spatiotemporal coordinate types</a></li>
+<li class="toctree-l4"><a class="reference internal" href="#ancillary-types-for-geodetic-computations">Ancillary types for geodetic computations</a></li>
+<li class="toctree-l4"><a class="reference internal" href="#complex-coordinate-types">Complex coordinate types</a></li>
+<li class="toctree-l4"><a class="reference internal" href="#projection-derivatives">Projection derivatives</a></li>
+<li class="toctree-l4"><a class="reference internal" href="#list-structures">List structures</a></li>
+<li class="toctree-l4"><a class="reference internal" href="#info-structures">Info structures</a></li>
+<li class="toctree-l4"><a class="reference internal" href="#error-codes">Error codes</a></li>
+<li class="toctree-l4"><a class="reference internal" href="#logging">Logging</a></li>
+<li class="toctree-l4"><a class="reference internal" href="#setting-custom-i-o-functions">Setting custom I/O functions</a></li>
+<li class="toctree-l4"><a class="reference internal" href="#network-related-functionality">Network related functionality</a></li>
+<li class="toctree-l4"><a class="reference internal" href="#c-api-for-iso-19111-functionality">C API for ISO-19111 functionality</a></li>
+</ul>
+</li>
+<li class="toctree-l3"><a class="reference internal" href="functions.html">Functions</a></li>
+<li class="toctree-l3"><a class="reference internal" href="cpp/index.html">C++ API</a></li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../cmake.html">Using PROJ in CMake projects</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../bindings.html">Language bindings</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../migration.html">Version 4 to 6 API Migration</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../migration.html#version-4-to-5-api-migration">Version 4 to 5 API Migration</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../../specifications/index.html">Specifications</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../community/index.html">Community</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../glossary.html">Glossary</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../zreferences.html">References</a></li>
+</ul>
+
+ </div>
+ </div>
+ </nav>
+
+ <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap"><nav class="wy-nav-top" aria-label="Mobile navigation menu" style="background: #353130" >
+ <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
+ <a href="../../index.html">PROJ</a>
+ </nav>
+
+ <div class="wy-nav-content">
+ <div class="rst-content">
+ <div role="navigation" aria-label="Page navigation">
+ <ul class="wy-breadcrumbs">
+ <li><a href="../../index.html" class="icon icon-home"></a> &raquo;</li>
+ <li><a href="../index.html">Development</a> &raquo;</li>
+ <li><a href="index.html">Reference</a> &raquo;</li>
+ <li>Data types</li>
+ <li class="wy-breadcrumbs-aside">
+ <a href="https://github.com/OSGeo/PROJ/edit/8.2/docs/source/development/reference/datatypes.rst" class="fa fa-github"> Edit on GitHub</a>
+ </li>
+ </ul><div class="rst-breadcrumbs-buttons" role="navigation" aria-label="Sequential page navigation">
+ <a href="macros.html" class="btn btn-neutral float-left" title="Macros" accesskey="p"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
+ <a href="functions.html" class="btn btn-neutral float-right" title="Functions" accesskey="n">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
+ </div>
+ <hr/>
+</div>
+ <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
+ <div itemprop="articleBody">
+
+ <section id="data-types">
+<span id="datatypes"></span><h1>Data types<a class="headerlink" href="#data-types" title="Permalink to this headline">¶</a></h1>
+<p>This section describes the numerous data types in use in PROJ.4. As a rule
+of thumb PROJ.4 data types are prefixed with <code class="docutils literal notranslate"><span class="pre">PJ_</span></code>, or in one particular case,
+is simply called <a class="reference internal" href="#c.PJ" title="PJ"><code class="xref c c-type docutils literal notranslate"><span class="pre">PJ</span></code></a>. A few notable exceptions can be traced
+back to the very early days of PROJ.4 when the <code class="docutils literal notranslate"><span class="pre">PJ_</span></code> prefix was not
+consistently used.</p>
+<section id="transformation-objects">
+<h2>Transformation objects<a class="headerlink" href="#transformation-objects" title="Permalink to this headline">¶</a></h2>
+<dl class="c type">
+<dt class="sig sig-object c" id="c.PJ">
+<span class="k"><span class="pre">type</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ</span></span></span><a class="headerlink" href="#c.PJ" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Object containing everything related to a given projection or transformation.
+As a user of the PROJ.4 library you are only exposed to pointers to this
+object and the contents is hidden behind the public API. <a class="reference internal" href="#c.PJ" title="PJ"><code class="xref c c-type docutils literal notranslate"><span class="pre">PJ</span></code></a> objects
+are created with <a class="reference internal" href="functions.html#c.proj_create" title="proj_create"><code class="xref c c-func docutils literal notranslate"><span class="pre">proj_create()</span></code></a> and destroyed with
+<a class="reference internal" href="functions.html#c.proj_destroy" title="proj_destroy"><code class="xref c c-func docutils literal notranslate"><span class="pre">proj_destroy()</span></code></a>.</p>
+</dd></dl>
+
+<dl class="c type">
+<dt class="sig sig-object c" id="c.PJ_DIRECTION">
+<span class="k"><span class="pre">type</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_DIRECTION</span></span></span><a class="headerlink" href="#c.PJ_DIRECTION" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Enumeration that is used to convey in which direction a given transformation
+should be performed. Used in transformation function call as described in
+the section on <a class="reference internal" href="functions.html#coord-trans-functions"><span class="std std-ref">transformation functions</span></a>.</p>
+<p>Forward transformations are defined with the :c:</p>
+<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="k">typedef</span><span class="w"> </span><span class="k">enum</span><span class="w"> </span><span class="n">proj_direction</span><span class="w"> </span><span class="p">{</span><span class="w"></span>
+<span class="w"> </span><span class="n">PJ_FWD</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">1</span><span class="p">,</span><span class="w"> </span><span class="cm">/* Forward */</span><span class="w"></span>
+<span class="w"> </span><span class="n">PJ_IDENT</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span><span class="w"> </span><span class="cm">/* Do nothing */</span><span class="w"></span>
+<span class="w"> </span><span class="n">PJ_INV</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">-1</span><span class="w"> </span><span class="cm">/* Inverse */</span><span class="w"></span>
+<span class="p">}</span><span class="w"> </span><span class="n">PJ_DIRECTION</span><span class="p">;</span><span class="w"></span>
+</pre></div>
+</div>
+<dl class="cpp enumerator">
+<dt class="sig sig-object cpp" id="_CPPv46PJ_FWD">
+<span id="_CPPv36PJ_FWD"></span><span id="_CPPv26PJ_FWD"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_FWD</span></span></span><a class="headerlink" href="#_CPPv46PJ_FWD" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Perform transformation in the forward direction.</p>
+</dd></dl>
+
+<dl class="cpp enumerator">
+<dt class="sig sig-object cpp" id="_CPPv48PJ_IDENT">
+<span id="_CPPv38PJ_IDENT"></span><span id="_CPPv28PJ_IDENT"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_IDENT</span></span></span><a class="headerlink" href="#_CPPv48PJ_IDENT" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Identity. Do nothing.</p>
+</dd></dl>
+
+<dl class="cpp enumerator">
+<dt class="sig sig-object cpp" id="_CPPv46PJ_INV">
+<span id="_CPPv36PJ_INV"></span><span id="_CPPv26PJ_INV"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_INV</span></span></span><a class="headerlink" href="#_CPPv46PJ_INV" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Perform transformation in the inverse direction.</p>
+</dd></dl>
+
+</dd></dl>
+
+<dl class="c type">
+<dt class="sig sig-object c" id="c.PJ_CONTEXT">
+<span class="k"><span class="pre">type</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_CONTEXT</span></span></span><a class="headerlink" href="#c.PJ_CONTEXT" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Context objects enable safe multi-threaded usage of PROJ.4. Each <a class="reference internal" href="#c.PJ" title="PJ"><code class="xref c c-type docutils literal notranslate"><span class="pre">PJ</span></code></a>
+object is connected to a context (if not specified, the default context is
+used). All operations within a context should be performed in the same thread.
+<a class="reference internal" href="#c.PJ_CONTEXT" title="PJ_CONTEXT"><code class="xref c c-type docutils literal notranslate"><span class="pre">PJ_CONTEXT</span></code></a> objects are created with <a class="reference internal" href="functions.html#c.proj_context_create" title="proj_context_create"><code class="xref c c-func docutils literal notranslate"><span class="pre">proj_context_create()</span></code></a>
+and destroyed with <a class="reference internal" href="functions.html#c.proj_context_destroy" title="proj_context_destroy"><code class="xref c c-func docutils literal notranslate"><span class="pre">proj_context_destroy()</span></code></a>.</p>
+</dd></dl>
+
+<dl class="c type">
+<dt class="sig sig-object c" id="c.PJ_AREA">
+<span class="k"><span class="pre">type</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_AREA</span></span></span><a class="headerlink" href="#c.PJ_AREA" title="Permalink to this definition">¶</a><br /></dt>
+<dd><div class="versionadded">
+<p><span class="versionmodified added">New in version 6.0.0.</span></p>
+</div>
+<p>Opaque object describing an area in which a transformation is performed.</p>
+<p>It is used with <a class="reference internal" href="functions.html#c.proj_create_crs_to_crs" title="proj_create_crs_to_crs"><code class="xref c c-func docutils literal notranslate"><span class="pre">proj_create_crs_to_crs()</span></code></a> to select the best transformation
+between the two input coordinate reference systems.</p>
+</dd></dl>
+
+</section>
+<section id="dimensional-coordinates">
+<h2>2 dimensional coordinates<a class="headerlink" href="#dimensional-coordinates" title="Permalink to this headline">¶</a></h2>
+<p>Various 2-dimensional coordinate data types.</p>
+<dl class="c type">
+<dt class="sig sig-object c" id="c.PJ_LP">
+<span class="k"><span class="pre">type</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_LP</span></span></span><a class="headerlink" href="#c.PJ_LP" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Geodetic coordinate, latitude and longitude. Usually in radians.</p>
+<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="k">typedef</span><span class="w"> </span><span class="k">struct</span><span class="w"> </span><span class="p">{</span><span class="w"> </span><span class="kt">double</span><span class="w"> </span><span class="n">lam</span><span class="p">,</span><span class="w"> </span><span class="n">phi</span><span class="p">;</span><span class="w"> </span><span class="p">}</span><span class="w"> </span><span class="n">PJ_LP</span><span class="p">;</span><span class="w"></span>
+</pre></div>
+</div>
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_LP.PJ_LP.lam">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_LP</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">lam</span></span></span><a class="headerlink" href="#c.PJ_LP.PJ_LP.lam" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Longitude. Lambda.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_LP.PJ_LP.phi">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_LP</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">phi</span></span></span><a class="headerlink" href="#c.PJ_LP.PJ_LP.phi" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Latitude. Phi.</p>
+</dd></dl>
+
+</dd></dl>
+
+<dl class="c type">
+<dt class="sig sig-object c" id="c.PJ_XY">
+<span class="k"><span class="pre">type</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_XY</span></span></span><a class="headerlink" href="#c.PJ_XY" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>2-dimensional cartesian coordinate.</p>
+<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="k">typedef</span><span class="w"> </span><span class="k">struct</span><span class="w"> </span><span class="p">{</span><span class="w"> </span><span class="kt">double</span><span class="w"> </span><span class="n">x</span><span class="p">,</span><span class="w"> </span><span class="n">y</span><span class="p">;</span><span class="w"> </span><span class="p">}</span><span class="w"> </span><span class="n">PJ_XY</span><span class="p">;</span><span class="w"></span>
+</pre></div>
+</div>
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_XY.PJ_XY.x">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_XY</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">x</span></span></span><a class="headerlink" href="#c.PJ_XY.PJ_XY.x" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Easting.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_XY.PJ_XY.y">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_XY</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">y</span></span></span><a class="headerlink" href="#c.PJ_XY.PJ_XY.y" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Northing.</p>
+</dd></dl>
+
+</dd></dl>
+
+<dl class="c type">
+<dt class="sig sig-object c" id="c.PJ_UV">
+<span class="k"><span class="pre">type</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_UV</span></span></span><a class="headerlink" href="#c.PJ_UV" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>2-dimensional generic coordinate. Usually used when contents can be either
+a <a class="reference internal" href="#c.PJ_XY" title="PJ_XY"><code class="xref c c-type docutils literal notranslate"><span class="pre">PJ_XY</span></code></a> or <a class="reference internal" href="#c.PJ_LP" title="PJ_LP"><code class="xref c c-type docutils literal notranslate"><span class="pre">PJ_LP</span></code></a>.</p>
+<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="k">typedef</span><span class="w"> </span><span class="k">struct</span><span class="w"> </span><span class="p">{</span><span class="kt">double</span><span class="w"> </span><span class="n">u</span><span class="p">,</span><span class="w"> </span><span class="n">v</span><span class="p">;</span><span class="w"> </span><span class="p">}</span><span class="w"> </span><span class="n">PJ_UV</span><span class="p">;</span><span class="w"></span>
+</pre></div>
+</div>
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_UV.PJ_UV.u">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_UV</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">u</span></span></span><a class="headerlink" href="#c.PJ_UV.PJ_UV.u" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Longitude or easting, depending on use.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_UV.PJ_UV.v">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_UV</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">v</span></span></span><a class="headerlink" href="#c.PJ_UV.PJ_UV.v" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Latitude or northing, depending on use.</p>
+</dd></dl>
+
+</dd></dl>
+
+</section>
+<section id="id1">
+<h2>3 dimensional coordinates<a class="headerlink" href="#id1" title="Permalink to this headline">¶</a></h2>
+<p>The following data types are the 3-dimensional equivalents to the data
+types above.</p>
+<dl class="c type">
+<dt class="sig sig-object c" id="c.PJ_LPZ">
+<span class="k"><span class="pre">type</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_LPZ</span></span></span><a class="headerlink" href="#c.PJ_LPZ" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>3-dimensional version of <a class="reference internal" href="#c.PJ_LP" title="PJ_LP"><code class="xref c c-type docutils literal notranslate"><span class="pre">PJ_LP</span></code></a>. Holds longitude, latitude and
+a vertical component.</p>
+<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="k">typedef</span><span class="w"> </span><span class="k">struct</span><span class="w"> </span><span class="p">{</span><span class="w"> </span><span class="kt">double</span><span class="w"> </span><span class="n">lam</span><span class="p">,</span><span class="w"> </span><span class="n">phi</span><span class="p">,</span><span class="w"> </span><span class="n">z</span><span class="p">;</span><span class="w"> </span><span class="p">}</span><span class="w"> </span><span class="n">PJ_LPZ</span><span class="p">;</span><span class="w"></span>
+</pre></div>
+</div>
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_LPZ.PJ_LPZ.lam">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_LPZ</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">lam</span></span></span><a class="headerlink" href="#c.PJ_LPZ.PJ_LPZ.lam" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Longitude. Lambda.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_LPZ.PJ_LPZ.phi">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_LPZ</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">phi</span></span></span><a class="headerlink" href="#c.PJ_LPZ.PJ_LPZ.phi" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Latitude. Phi.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_LPZ.PJ_LPZ.z">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_LPZ</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">z</span></span></span><a class="headerlink" href="#c.PJ_LPZ.PJ_LPZ.z" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Vertical component.</p>
+</dd></dl>
+
+</dd></dl>
+
+<dl class="c type">
+<dt class="sig sig-object c" id="c.PJ_XYZ">
+<span class="k"><span class="pre">type</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_XYZ</span></span></span><a class="headerlink" href="#c.PJ_XYZ" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Cartesian coordinate in 3 dimensions. Extension of <a class="reference internal" href="#c.PJ_XY" title="PJ_XY"><code class="xref c c-type docutils literal notranslate"><span class="pre">PJ_XY</span></code></a>.</p>
+<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="k">typedef</span><span class="w"> </span><span class="k">struct</span><span class="w"> </span><span class="p">{</span><span class="w"> </span><span class="kt">double</span><span class="w"> </span><span class="n">x</span><span class="p">,</span><span class="w"> </span><span class="n">y</span><span class="p">,</span><span class="w"> </span><span class="n">z</span><span class="p">;</span><span class="w"> </span><span class="p">}</span><span class="w"> </span><span class="n">PJ_XYZ</span><span class="p">;</span><span class="w"></span>
+</pre></div>
+</div>
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_XYZ.PJ_XYZ.x">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_XYZ</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">x</span></span></span><a class="headerlink" href="#c.PJ_XYZ.PJ_XYZ.x" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Easting or the X component of a 3D cartesian system.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_XYZ.PJ_XYZ.y">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_XYZ</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">y</span></span></span><a class="headerlink" href="#c.PJ_XYZ.PJ_XYZ.y" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Northing or the Y component of a 3D cartesian system.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_XYZ.PJ_XYZ.z">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_XYZ</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">z</span></span></span><a class="headerlink" href="#c.PJ_XYZ.PJ_XYZ.z" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Vertical component or the Z component of a 3D cartesian system.</p>
+</dd></dl>
+
+</dd></dl>
+
+<dl class="c type">
+<dt class="sig sig-object c" id="c.PJ_UVW">
+<span class="k"><span class="pre">type</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_UVW</span></span></span><a class="headerlink" href="#c.PJ_UVW" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>3-dimensional extension of <a class="reference internal" href="#c.PJ_UV" title="PJ_UV"><code class="xref c c-type docutils literal notranslate"><span class="pre">PJ_UV</span></code></a>.</p>
+<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="k">typedef</span><span class="w"> </span><span class="k">struct</span><span class="w"> </span><span class="p">{</span><span class="kt">double</span><span class="w"> </span><span class="n">u</span><span class="p">,</span><span class="w"> </span><span class="n">v</span><span class="p">,</span><span class="w"> </span><span class="n">w</span><span class="p">;</span><span class="w"> </span><span class="p">}</span><span class="w"> </span><span class="n">PJ_UVW</span><span class="p">;</span><span class="w"></span>
+</pre></div>
+</div>
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_UVW.PJ_UVW.u">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_UVW</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">u</span></span></span><a class="headerlink" href="#c.PJ_UVW.PJ_UVW.u" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Longitude or easting, depending on use.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_UVW.PJ_UVW.v">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_UVW</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">v</span></span></span><a class="headerlink" href="#c.PJ_UVW.PJ_UVW.v" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Latitude or northing, depending on use.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_UVW.PJ_UVW.w">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_UVW</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">w</span></span></span><a class="headerlink" href="#c.PJ_UVW.PJ_UVW.w" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Vertical component.</p>
+</dd></dl>
+
+</dd></dl>
+
+</section>
+<section id="spatiotemporal-coordinate-types">
+<h2>Spatiotemporal coordinate types<a class="headerlink" href="#spatiotemporal-coordinate-types" title="Permalink to this headline">¶</a></h2>
+<p>The following data types are extensions of the triplets above into the time
+domain.</p>
+<dl class="c type">
+<dt class="sig sig-object c" id="c.PJ_LPZT">
+<span class="k"><span class="pre">type</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_LPZT</span></span></span><a class="headerlink" href="#c.PJ_LPZT" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Spatiotemporal version of <a class="reference internal" href="#c.PJ_LPZ" title="PJ_LPZ"><code class="xref c c-type docutils literal notranslate"><span class="pre">PJ_LPZ</span></code></a>.</p>
+<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="k">typedef</span><span class="w"> </span><span class="k">struct</span><span class="w"> </span><span class="p">{</span><span class="w"></span>
+<span class="w"> </span><span class="kt">double</span><span class="w"> </span><span class="n">lam</span><span class="p">;</span><span class="w"></span>
+<span class="w"> </span><span class="kt">double</span><span class="w"> </span><span class="n">phi</span><span class="p">;</span><span class="w"></span>
+<span class="w"> </span><span class="kt">double</span><span class="w"> </span><span class="n">z</span><span class="p">;</span><span class="w"></span>
+<span class="w"> </span><span class="kt">double</span><span class="w"> </span><span class="n">t</span><span class="p">;</span><span class="w"></span>
+<span class="p">}</span><span class="w"> </span><span class="n">PJ_LPZT</span><span class="p">;</span><span class="w"></span>
+</pre></div>
+</div>
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_LPZT.PJ_LPZT.lam">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_LPZT</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">lam</span></span></span><a class="headerlink" href="#c.PJ_LPZT.PJ_LPZT.lam" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Longitude.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_LPZT.PJ_LPZT.phi">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_LPZT</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">phi</span></span></span><a class="headerlink" href="#c.PJ_LPZT.PJ_LPZT.phi" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Latitude</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_LPZT.PJ_LPZT.z">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_LPZT</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">z</span></span></span><a class="headerlink" href="#c.PJ_LPZT.PJ_LPZT.z" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Vertical component.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_LPZT.PJ_LPZT.t">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_LPZT</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">t</span></span></span><a class="headerlink" href="#c.PJ_LPZT.PJ_LPZT.t" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Time component.</p>
+</dd></dl>
+
+</dd></dl>
+
+<dl class="c type">
+<dt class="sig sig-object c" id="c.PJ_XYZT">
+<span class="k"><span class="pre">type</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_XYZT</span></span></span><a class="headerlink" href="#c.PJ_XYZT" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Generic spatiotemporal coordinate. Useful for e.g. cartesian coordinates with
+an attached time-stamp.</p>
+<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="k">typedef</span><span class="w"> </span><span class="k">struct</span><span class="w"> </span><span class="p">{</span><span class="w"></span>
+<span class="w"> </span><span class="kt">double</span><span class="w"> </span><span class="n">x</span><span class="p">;</span><span class="w"></span>
+<span class="w"> </span><span class="kt">double</span><span class="w"> </span><span class="n">y</span><span class="p">;</span><span class="w"></span>
+<span class="w"> </span><span class="kt">double</span><span class="w"> </span><span class="n">z</span><span class="p">;</span><span class="w"></span>
+<span class="w"> </span><span class="kt">double</span><span class="w"> </span><span class="n">t</span><span class="p">;</span><span class="w"></span>
+<span class="p">}</span><span class="w"> </span><span class="n">PJ_XYZT</span><span class="p">;</span><span class="w"></span>
+</pre></div>
+</div>
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_XYZT.PJ_XYZT.x">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_XYZT</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">x</span></span></span><a class="headerlink" href="#c.PJ_XYZT.PJ_XYZT.x" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Easting or the X component of a 3D cartesian system.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_XYZT.PJ_XYZT.y">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_XYZT</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">y</span></span></span><a class="headerlink" href="#c.PJ_XYZT.PJ_XYZT.y" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Northing or the Y component of a 3D cartesian system.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_XYZT.PJ_XYZT.z">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_XYZT</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">z</span></span></span><a class="headerlink" href="#c.PJ_XYZT.PJ_XYZT.z" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Vertical or the Z component of a 3D cartesian system.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_XYZT.PJ_XYZT.t">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_XYZT</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">t</span></span></span><a class="headerlink" href="#c.PJ_XYZT.PJ_XYZT.t" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Time component.</p>
+</dd></dl>
+
+</dd></dl>
+
+<dl class="c type">
+<dt class="sig sig-object c" id="c.PJ_UVWT">
+<span class="k"><span class="pre">type</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_UVWT</span></span></span><a class="headerlink" href="#c.PJ_UVWT" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Spatiotemporal version of <a class="reference internal" href="#c.PJ_UVW" title="PJ_UVW"><code class="xref c c-type docutils literal notranslate"><span class="pre">PJ_UVW</span></code></a>.</p>
+<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="k">typedef</span><span class="w"> </span><span class="k">struct</span><span class="w"> </span><span class="p">{</span><span class="w"> </span><span class="kt">double</span><span class="w"> </span><span class="n">u</span><span class="p">,</span><span class="w"> </span><span class="n">v</span><span class="p">,</span><span class="w"> </span><span class="n">w</span><span class="p">,</span><span class="w"> </span><span class="n">t</span><span class="p">;</span><span class="w"> </span><span class="p">}</span><span class="w"> </span><span class="n">PJ_UVWT</span><span class="p">;</span><span class="w"></span>
+</pre></div>
+</div>
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_UVWT.PJ_UVWT.e">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_UVWT</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">e</span></span></span><a class="headerlink" href="#c.PJ_UVWT.PJ_UVWT.e" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>First horizontal component.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_UVWT.PJ_UVWT.n">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_UVWT</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">n</span></span></span><a class="headerlink" href="#c.PJ_UVWT.PJ_UVWT.n" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Second horizontal component.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_UVWT.PJ_UVWT.w">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_UVWT</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">w</span></span></span><a class="headerlink" href="#c.PJ_UVWT.PJ_UVWT.w" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Vertical component.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_UVWT.PJ_UVWT.t">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_UVWT</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">t</span></span></span><a class="headerlink" href="#c.PJ_UVWT.PJ_UVWT.t" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Temporal component.</p>
+</dd></dl>
+
+</dd></dl>
+
+</section>
+<section id="ancillary-types-for-geodetic-computations">
+<h2>Ancillary types for geodetic computations<a class="headerlink" href="#ancillary-types-for-geodetic-computations" title="Permalink to this headline">¶</a></h2>
+<dl class="c type">
+<dt class="sig sig-object c" id="c.PJ_OPK">
+<span class="k"><span class="pre">type</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_OPK</span></span></span><a class="headerlink" href="#c.PJ_OPK" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Rotations, for instance three euler angles.</p>
+<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="k">typedef</span><span class="w"> </span><span class="k">struct</span><span class="w"> </span><span class="p">{</span><span class="w"> </span><span class="kt">double</span><span class="w"> </span><span class="n">o</span><span class="p">,</span><span class="w"> </span><span class="n">p</span><span class="p">,</span><span class="w"> </span><span class="n">k</span><span class="p">;</span><span class="w"> </span><span class="p">}</span><span class="w"> </span><span class="n">PJ_OPK</span><span class="p">;</span><span class="w"></span>
+</pre></div>
+</div>
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_OPK.PJ_OPK.o">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_OPK</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">o</span></span></span><a class="headerlink" href="#c.PJ_OPK.PJ_OPK.o" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>First rotation angle, omega.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_OPK.PJ_OPK.p">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_OPK</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">p</span></span></span><a class="headerlink" href="#c.PJ_OPK.PJ_OPK.p" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Second rotation angle, phi.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_OPK.PJ_OPK.k">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_OPK</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">k</span></span></span><a class="headerlink" href="#c.PJ_OPK.PJ_OPK.k" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Third rotation angle, kappa.</p>
+</dd></dl>
+
+</dd></dl>
+
+<dl class="c type">
+<dt class="sig sig-object c" id="c.PJ_ENU">
+<span class="k"><span class="pre">type</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_ENU</span></span></span><a class="headerlink" href="#c.PJ_ENU" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>East, north and up components.</p>
+<div class="highlight-c notranslate"><div class="highlight"><pre><span></span><span class="k">typedef</span><span class="w"> </span><span class="k">struct</span><span class="w"> </span><span class="p">{</span><span class="w"> </span><span class="kt">double</span><span class="w"> </span><span class="n">e</span><span class="p">,</span><span class="w"> </span><span class="n">n</span><span class="p">,</span><span class="w"> </span><span class="n">u</span><span class="p">;</span><span class="w"> </span><span class="p">}</span><span class="w"> </span><span class="n">PJ_ENU</span><span class="p">;</span><span class="w"></span>
+</pre></div>
+</div>
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_ENU.PJ_ENU.e">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_ENU</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">e</span></span></span><a class="headerlink" href="#c.PJ_ENU.PJ_ENU.e" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>East component.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_ENU.PJ_ENU.n">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_ENU</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">n</span></span></span><a class="headerlink" href="#c.PJ_ENU.PJ_ENU.n" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>North component.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_ENU.PJ_ENU.u">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_ENU</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">u</span></span></span><a class="headerlink" href="#c.PJ_ENU.PJ_ENU.u" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Up component.</p>
+</dd></dl>
+
+</dd></dl>
+
+<dl class="c type">
+<dt class="sig sig-object c" id="c.PJ_GEOD">
+<span class="k"><span class="pre">type</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_GEOD</span></span></span><a class="headerlink" href="#c.PJ_GEOD" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Geodesic length, forward and reverse azimuths.</p>
+<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="k">typedef</span><span class="w"> </span><span class="k">struct</span><span class="w"> </span><span class="p">{</span><span class="w"> </span><span class="kt">double</span><span class="w"> </span><span class="n">s</span><span class="p">,</span><span class="w"> </span><span class="n">a1</span><span class="p">,</span><span class="w"> </span><span class="n">a2</span><span class="p">;</span><span class="w"> </span><span class="p">}</span><span class="w"> </span><span class="n">PJ_GEOD</span><span class="p">;</span><span class="w"></span>
+</pre></div>
+</div>
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_GEOD.PJ_GEOD.s">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_GEOD</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">s</span></span></span><a class="headerlink" href="#c.PJ_GEOD.PJ_GEOD.s" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Geodesic length.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_GEOD.PJ_GEOD.a1">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_GEOD</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">a1</span></span></span><a class="headerlink" href="#c.PJ_GEOD.PJ_GEOD.a1" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Forward azimuth.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_GEOD.PJ_GEOD.a2">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_GEOD</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">a2</span></span></span><a class="headerlink" href="#c.PJ_GEOD.PJ_GEOD.a2" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Reverse azimuth.</p>
+</dd></dl>
+
+</dd></dl>
+
+</section>
+<section id="complex-coordinate-types">
+<h2>Complex coordinate types<a class="headerlink" href="#complex-coordinate-types" title="Permalink to this headline">¶</a></h2>
+<dl class="c type">
+<dt class="sig sig-object c" id="c.PJ_COORD">
+<span class="k"><span class="pre">type</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_COORD</span></span></span><a class="headerlink" href="#c.PJ_COORD" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>General purpose coordinate union type, applicable in two, three and four dimensions.
+This is the default coordinate datatype used in PROJ.</p>
+<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="k">typedef</span><span class="w"> </span><span class="k">union</span><span class="w"> </span><span class="p">{</span><span class="w"></span>
+<span class="w"> </span><span class="kt">double</span><span class="w"> </span><span class="n">v</span><span class="p">[</span><span class="mi">4</span><span class="p">];</span><span class="w"></span>
+<span class="w"> </span><span class="n">PJ_XYZT</span><span class="w"> </span><span class="n">xyzt</span><span class="p">;</span><span class="w"></span>
+<span class="w"> </span><span class="n">PJ_UVWT</span><span class="w"> </span><span class="n">uvwt</span><span class="p">;</span><span class="w"></span>
+<span class="w"> </span><span class="n">PJ_LPZT</span><span class="w"> </span><span class="n">lpzt</span><span class="p">;</span><span class="w"></span>
+<span class="w"> </span><span class="n">PJ_GEOD</span><span class="w"> </span><span class="n">geod</span><span class="p">;</span><span class="w"></span>
+<span class="w"> </span><span class="n">PJ_OPK</span><span class="w"> </span><span class="n">opk</span><span class="p">;</span><span class="w"></span>
+<span class="w"> </span><span class="n">PJ_ENU</span><span class="w"> </span><span class="n">enu</span><span class="p">;</span><span class="w"></span>
+<span class="w"> </span><span class="n">PJ_XYZ</span><span class="w"> </span><span class="n">xyz</span><span class="p">;</span><span class="w"></span>
+<span class="w"> </span><span class="n">PJ_UVW</span><span class="w"> </span><span class="n">uvw</span><span class="p">;</span><span class="w"></span>
+<span class="w"> </span><span class="n">PJ_LPZ</span><span class="w"> </span><span class="n">lpz</span><span class="p">;</span><span class="w"></span>
+<span class="w"> </span><span class="n">PJ_XY</span><span class="w"> </span><span class="n">xy</span><span class="p">;</span><span class="w"></span>
+<span class="w"> </span><span class="n">PJ_UV</span><span class="w"> </span><span class="n">uv</span><span class="p">;</span><span class="w"></span>
+<span class="w"> </span><span class="n">PJ_LP</span><span class="w"> </span><span class="n">lp</span><span class="p">;</span><span class="w"></span>
+<span class="p">}</span><span class="w"> </span><span class="n">PJ_COORD</span><span class="w"> </span><span class="p">;</span><span class="w"></span>
+</pre></div>
+</div>
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_COORD.v">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">v</span></span></span><span class="p"><span class="pre">[</span></span><span class="m"><span class="pre">4</span></span><span class="p"><span class="pre">]</span></span><a class="headerlink" href="#c.PJ_COORD.v" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Generic four-dimensional vector.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_COORD.PJ_COORD.xyzt">
+<a class="reference internal" href="#c.PJ_XYZT" title="PJ_XYZT"><span class="n"><span class="pre">PJ_XYZT</span></span></a><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_COORD</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">xyzt</span></span></span><a class="headerlink" href="#c.PJ_COORD.PJ_COORD.xyzt" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Spatiotemporal cartesian coordinate.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_COORD.PJ_COORD.uvwt">
+<a class="reference internal" href="#c.PJ_UVWT" title="PJ_UVWT"><span class="n"><span class="pre">PJ_UVWT</span></span></a><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_COORD</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">uvwt</span></span></span><a class="headerlink" href="#c.PJ_COORD.PJ_COORD.uvwt" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Spatiotemporal generic coordinate.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_COORD.PJ_COORD.lpzt">
+<a class="reference internal" href="#c.PJ_LPZT" title="PJ_LPZT"><span class="n"><span class="pre">PJ_LPZT</span></span></a><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_COORD</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">lpzt</span></span></span><a class="headerlink" href="#c.PJ_COORD.PJ_COORD.lpzt" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Longitude, latitude, vertical and time components.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_COORD.PJ_COORD.geod">
+<a class="reference internal" href="#c.PJ_GEOD" title="PJ_GEOD"><span class="n"><span class="pre">PJ_GEOD</span></span></a><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_COORD</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">geod</span></span></span><a class="headerlink" href="#c.PJ_COORD.PJ_COORD.geod" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Geodesic length, forward and reverse azimuths.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_COORD.PJ_COORD.opk">
+<a class="reference internal" href="#c.PJ_OPK" title="PJ_OPK"><span class="n"><span class="pre">PJ_OPK</span></span></a><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_COORD</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">opk</span></span></span><a class="headerlink" href="#c.PJ_COORD.PJ_COORD.opk" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Rotations, for instance three euler angles.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_COORD.PJ_COORD.enu">
+<a class="reference internal" href="#c.PJ_ENU" title="PJ_ENU"><span class="n"><span class="pre">PJ_ENU</span></span></a><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_COORD</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">enu</span></span></span><a class="headerlink" href="#c.PJ_COORD.PJ_COORD.enu" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>East, north and up components.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_COORD.PJ_COORD.xyz">
+<a class="reference internal" href="#c.PJ_XYZ" title="PJ_XYZ"><span class="n"><span class="pre">PJ_XYZ</span></span></a><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_COORD</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">xyz</span></span></span><a class="headerlink" href="#c.PJ_COORD.PJ_COORD.xyz" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>3-dimensional cartesian coordinate.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_COORD.PJ_COORD.uvw">
+<a class="reference internal" href="#c.PJ_UVW" title="PJ_UVW"><span class="n"><span class="pre">PJ_UVW</span></span></a><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_COORD</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">uvw</span></span></span><a class="headerlink" href="#c.PJ_COORD.PJ_COORD.uvw" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>3-dimensional generic coordinate.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_COORD.PJ_COORD.lpz">
+<a class="reference internal" href="#c.PJ_LPZ" title="PJ_LPZ"><span class="n"><span class="pre">PJ_LPZ</span></span></a><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_COORD</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">lpz</span></span></span><a class="headerlink" href="#c.PJ_COORD.PJ_COORD.lpz" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Longitude, latitude and vertical component.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_COORD.PJ_COORD.xy">
+<a class="reference internal" href="#c.PJ_XY" title="PJ_XY"><span class="n"><span class="pre">PJ_XY</span></span></a><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_COORD</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">xy</span></span></span><a class="headerlink" href="#c.PJ_COORD.PJ_COORD.xy" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>2-dimensional cartesian coordinate.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_COORD.PJ_COORD.uv">
+<a class="reference internal" href="#c.PJ_UV" title="PJ_UV"><span class="n"><span class="pre">PJ_UV</span></span></a><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_COORD</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">uv</span></span></span><a class="headerlink" href="#c.PJ_COORD.PJ_COORD.uv" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>2-dimensional generic coordinate.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_COORD.PJ_COORD.lp">
+<a class="reference internal" href="#c.PJ_LP" title="PJ_LP"><span class="n"><span class="pre">PJ_LP</span></span></a><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_COORD</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">lp</span></span></span><a class="headerlink" href="#c.PJ_COORD.PJ_COORD.lp" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Longitude and latitude.</p>
+</dd></dl>
+
+</dd></dl>
+
+</section>
+<section id="projection-derivatives">
+<h2>Projection derivatives<a class="headerlink" href="#projection-derivatives" title="Permalink to this headline">¶</a></h2>
+<dl class="c type">
+<dt class="sig sig-object c" id="c.PJ_FACTORS">
+<span class="k"><span class="pre">type</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_FACTORS</span></span></span><a class="headerlink" href="#c.PJ_FACTORS" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Various cartographic properties, such as scale factors, angular distortion
+and meridian convergence. Calculated with <a class="reference internal" href="functions.html#c.proj_factors" title="proj_factors"><code class="xref c c-func docutils literal notranslate"><span class="pre">proj_factors()</span></code></a>.</p>
+<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="k">typedef</span><span class="w"> </span><span class="k">struct</span><span class="w"> </span><span class="p">{</span><span class="w"></span>
+<span class="w"> </span><span class="kt">double</span><span class="w"> </span><span class="n">meridional_scale</span><span class="p">;</span><span class="w"></span>
+<span class="w"> </span><span class="kt">double</span><span class="w"> </span><span class="n">parallel_scale</span><span class="p">;</span><span class="w"></span>
+<span class="w"> </span><span class="kt">double</span><span class="w"> </span><span class="n">areal_scale</span><span class="p">;</span><span class="w"></span>
+
+<span class="w"> </span><span class="kt">double</span><span class="w"> </span><span class="n">angular_distortion</span><span class="p">;</span><span class="w"></span>
+<span class="w"> </span><span class="kt">double</span><span class="w"> </span><span class="n">meridian_parallel_angle</span><span class="p">;</span><span class="w"></span>
+<span class="w"> </span><span class="kt">double</span><span class="w"> </span><span class="n">meridian_convergence</span><span class="p">;</span><span class="w"></span>
+
+<span class="w"> </span><span class="kt">double</span><span class="w"> </span><span class="n">tissot_semimajor</span><span class="p">;</span><span class="w"></span>
+<span class="w"> </span><span class="kt">double</span><span class="w"> </span><span class="n">tissot_semiminor</span><span class="p">;</span><span class="w"></span>
+
+<span class="w"> </span><span class="kt">double</span><span class="w"> </span><span class="n">dx_dlam</span><span class="p">;</span><span class="w"></span>
+<span class="w"> </span><span class="kt">double</span><span class="w"> </span><span class="n">dx_dphi</span><span class="p">;</span><span class="w"></span>
+<span class="w"> </span><span class="kt">double</span><span class="w"> </span><span class="n">dy_dlam</span><span class="p">;</span><span class="w"></span>
+<span class="w"> </span><span class="kt">double</span><span class="w"> </span><span class="n">dy_dphi</span><span class="p">;</span><span class="w"></span>
+<span class="p">}</span><span class="w"> </span><span class="n">PJ_FACTORS</span><span class="p">;</span><span class="w"></span>
+</pre></div>
+</div>
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_FACTORS.PJ_FACTORS.meridional_scale">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_FACTORS</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">meridional_scale</span></span></span><a class="headerlink" href="#c.PJ_FACTORS.PJ_FACTORS.meridional_scale" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Meridional scale at coordinate <span class="math notranslate nohighlight">\(\left(\lambda,\phi\right)\)</span>.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_FACTORS.PJ_FACTORS.parallel_scale">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_FACTORS</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">parallel_scale</span></span></span><a class="headerlink" href="#c.PJ_FACTORS.PJ_FACTORS.parallel_scale" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Parallel scale at coordinate <span class="math notranslate nohighlight">\(\left(\lambda,\phi\right)\)</span>.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_FACTORS.PJ_FACTORS.areal_scale">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_FACTORS</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">areal_scale</span></span></span><a class="headerlink" href="#c.PJ_FACTORS.PJ_FACTORS.areal_scale" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Areal scale factor at coordinate <span class="math notranslate nohighlight">\(\left(\lambda,\phi\right)\)</span>.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_FACTORS.PJ_FACTORS.angular_distortion">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_FACTORS</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">angular_distortion</span></span></span><a class="headerlink" href="#c.PJ_FACTORS.PJ_FACTORS.angular_distortion" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Angular distortion at coordinate <span class="math notranslate nohighlight">\(\left(\lambda,\phi\right)\)</span>.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_FACTORS.PJ_FACTORS.meridian_parallel_angle">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_FACTORS</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">meridian_parallel_angle</span></span></span><a class="headerlink" href="#c.PJ_FACTORS.PJ_FACTORS.meridian_parallel_angle" title="Permalink to this definition">¶</a><br /></dt>
+<dd><blockquote>
+<div><p>Meridian/parallel angle, <span class="math notranslate nohighlight">\(\theta^\prime\)</span>, at coordinate <span class="math notranslate nohighlight">\(\left(\lambda,\phi\right)\)</span>.</p>
+</div></blockquote>
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_FACTORS.PJ_FACTORS.meridian_parallel_angle.PJ_FACTORS.meridian_convergence">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_FACTORS</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">meridian_convergence</span></span></span><a class="headerlink" href="#c.PJ_FACTORS.PJ_FACTORS.meridian_parallel_angle.PJ_FACTORS.meridian_convergence" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Meridian convergence at coordinate <span class="math notranslate nohighlight">\(\left(\lambda,\phi\right)\)</span>.
+Sometimes also described as <em>grid declination</em>.</p>
+</dd></dl>
+
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_FACTORS.PJ_FACTORS.tissot_semimajor">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_FACTORS</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">tissot_semimajor</span></span></span><a class="headerlink" href="#c.PJ_FACTORS.PJ_FACTORS.tissot_semimajor" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Maximum scale factor.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_FACTORS.PJ_FACTORS.tissot_semiminor">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_FACTORS</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">tissot_semiminor</span></span></span><a class="headerlink" href="#c.PJ_FACTORS.PJ_FACTORS.tissot_semiminor" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Minimum scale factor.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_FACTORS.PJ_FACTORS.dx_dlam">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_FACTORS</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">dx_dlam</span></span></span><a class="headerlink" href="#c.PJ_FACTORS.PJ_FACTORS.dx_dlam" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Partial derivative <span class="math notranslate nohighlight">\(\frac{\partial x}{\partial \lambda}\)</span> of coordinate
+<span class="math notranslate nohighlight">\(\left(\lambda,\phi\right)\)</span>.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_FACTORS.PJ_FACTORS.dy_dlam">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_FACTORS</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">dy_dlam</span></span></span><a class="headerlink" href="#c.PJ_FACTORS.PJ_FACTORS.dy_dlam" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Partial derivative <span class="math notranslate nohighlight">\(\frac{\partial y}{\partial \lambda}\)</span> of coordinate
+<span class="math notranslate nohighlight">\(\left(\lambda,\phi\right)\)</span>.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_FACTORS.PJ_FACTORS.dx_dphi">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_FACTORS</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">dx_dphi</span></span></span><a class="headerlink" href="#c.PJ_FACTORS.PJ_FACTORS.dx_dphi" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Partial derivative <span class="math notranslate nohighlight">\(\frac{\partial x}{\partial \phi}\)</span> of coordinate
+<span class="math notranslate nohighlight">\(\left(\lambda,\phi\right)\)</span>.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_FACTORS.PJ_FACTORS.dy_dphi">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_FACTORS</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">dy_dphi</span></span></span><a class="headerlink" href="#c.PJ_FACTORS.PJ_FACTORS.dy_dphi" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Partial derivative <span class="math notranslate nohighlight">\(\frac{\partial y}{\partial \phi}\)</span> of coordinate
+<span class="math notranslate nohighlight">\(\left(\lambda,\phi\right)\)</span>.</p>
+</dd></dl>
+
+</dd></dl>
+
+</section>
+<section id="list-structures">
+<h2>List structures<a class="headerlink" href="#list-structures" title="Permalink to this headline">¶</a></h2>
+<dl class="c type">
+<dt class="sig sig-object c" id="c.PJ_OPERATIONS">
+<span class="k"><span class="pre">type</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_OPERATIONS</span></span></span><a class="headerlink" href="#c.PJ_OPERATIONS" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Description a PROJ.4 operation</p>
+<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="k">struct</span><span class="w"> </span><span class="nc">PJ_OPERATIONS</span><span class="w"> </span><span class="p">{</span><span class="w"></span>
+<span class="w"> </span><span class="k">const</span><span class="w"> </span><span class="kt">char</span><span class="w"> </span><span class="o">*</span><span class="n">id</span><span class="p">;</span><span class="w"> </span><span class="cm">/* operation keyword */</span><span class="w"></span>
+<span class="w"> </span><span class="n">PJ</span><span class="w"> </span><span class="o">*</span><span class="p">(</span><span class="o">*</span><span class="n">proj</span><span class="p">)(</span><span class="n">PJ</span><span class="w"> </span><span class="o">*</span><span class="p">);</span><span class="w"> </span><span class="cm">/* operation entry point */</span><span class="w"></span>
+<span class="w"> </span><span class="kt">char</span><span class="w"> </span><span class="o">*</span><span class="w"> </span><span class="k">const</span><span class="w"> </span><span class="o">*</span><span class="n">descr</span><span class="p">;</span><span class="w"> </span><span class="cm">/* description text */</span><span class="w"></span>
+<span class="p">};</span><span class="w"></span>
+</pre></div>
+</div>
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_OPERATIONS.id">
+<span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="sig-name descname"><span class="n"><span class="pre">id</span></span></span><a class="headerlink" href="#c.PJ_OPERATIONS.id" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Operation keyword.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_OPERATIONS.op">
+<a class="reference internal" href="#c.PJ" title="PJ"><span class="n"><span class="pre">PJ</span></span></a><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="p"><span class="pre">(</span></span><span class="p"><span class="pre">*</span></span><span class="sig-name descname"><span class="n"><span class="pre">op</span></span></span><span class="p"><span class="pre">)</span></span><span class="p"><span class="pre">(</span></span><a class="reference internal" href="#c.PJ" title="PJ"><span class="n"><span class="pre">PJ</span></span></a><span class="p"><span class="pre">*</span></span><span class="p"><span class="pre">)</span></span><a class="headerlink" href="#c.PJ_OPERATIONS.op" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Operation entry point.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_OPERATIONS.descr">
+<span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="sig-name descname"><span class="n"><span class="pre">descr</span></span></span><a class="headerlink" href="#c.PJ_OPERATIONS.descr" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Description of operation.</p>
+</dd></dl>
+
+</dd></dl>
+
+<dl class="c type">
+<dt class="sig sig-object c" id="c.PJ_ELLPS">
+<span class="k"><span class="pre">type</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_ELLPS</span></span></span><a class="headerlink" href="#c.PJ_ELLPS" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Description of ellipsoids defined in PROJ.4</p>
+<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="k">struct</span><span class="w"> </span><span class="nc">PJ_ELLPS</span><span class="w"> </span><span class="p">{</span><span class="w"></span>
+<span class="w"> </span><span class="k">const</span><span class="w"> </span><span class="kt">char</span><span class="w"> </span><span class="o">*</span><span class="n">id</span><span class="p">;</span><span class="w"></span>
+<span class="w"> </span><span class="k">const</span><span class="w"> </span><span class="kt">char</span><span class="w"> </span><span class="o">*</span><span class="n">major</span><span class="p">;</span><span class="w"></span>
+<span class="w"> </span><span class="k">const</span><span class="w"> </span><span class="kt">char</span><span class="w"> </span><span class="o">*</span><span class="n">ell</span><span class="p">;</span><span class="w"></span>
+<span class="w"> </span><span class="k">const</span><span class="w"> </span><span class="kt">char</span><span class="w"> </span><span class="o">*</span><span class="n">name</span><span class="p">;</span><span class="w"></span>
+<span class="p">};</span><span class="w"></span>
+</pre></div>
+</div>
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_ELLPS.id">
+<span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="sig-name descname"><span class="n"><span class="pre">id</span></span></span><a class="headerlink" href="#c.PJ_ELLPS.id" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Keyword name of the ellipsoid.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_ELLPS.major">
+<span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="sig-name descname"><span class="n"><span class="pre">major</span></span></span><a class="headerlink" href="#c.PJ_ELLPS.major" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Semi-major axis of the ellipsoid, or radius in case of a sphere.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_ELLPS.ell">
+<span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="sig-name descname"><span class="n"><span class="pre">ell</span></span></span><a class="headerlink" href="#c.PJ_ELLPS.ell" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Elliptical parameter, e.g. <code class="docutils literal notranslate"><span class="pre">rf=298.257</span></code> or <code class="docutils literal notranslate"><span class="pre">b=6356772.2</span></code>.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_ELLPS.name">
+<span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="sig-name descname"><span class="n"><span class="pre">name</span></span></span><a class="headerlink" href="#c.PJ_ELLPS.name" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Name of the ellipsoid</p>
+</dd></dl>
+
+</dd></dl>
+
+<dl class="c type">
+<dt class="sig sig-object c" id="c.PJ_UNITS">
+<span class="k"><span class="pre">type</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_UNITS</span></span></span><a class="headerlink" href="#c.PJ_UNITS" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Distance units defined in PROJ.</p>
+<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="k">struct</span><span class="w"> </span><span class="nc">PJ_UNITS</span><span class="w"> </span><span class="p">{</span><span class="w"></span>
+<span class="w"> </span><span class="k">const</span><span class="w"> </span><span class="kt">char</span><span class="w"> </span><span class="o">*</span><span class="n">id</span><span class="p">;</span><span class="w"> </span><span class="cm">/* units keyword */</span><span class="w"></span>
+<span class="w"> </span><span class="k">const</span><span class="w"> </span><span class="kt">char</span><span class="w"> </span><span class="o">*</span><span class="n">to_meter</span><span class="p">;</span><span class="w"> </span><span class="cm">/* multiply by value to get meters */</span><span class="w"></span>
+<span class="w"> </span><span class="k">const</span><span class="w"> </span><span class="kt">char</span><span class="w"> </span><span class="o">*</span><span class="n">name</span><span class="p">;</span><span class="w"> </span><span class="cm">/* comments */</span><span class="w"></span>
+<span class="w"> </span><span class="kt">double</span><span class="w"> </span><span class="n">factor</span><span class="p">;</span><span class="w"> </span><span class="cm">/* to_meter factor in actual numbers */</span><span class="w"></span>
+<span class="p">};</span><span class="w"></span>
+</pre></div>
+</div>
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_UNITS.id">
+<span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="sig-name descname"><span class="n"><span class="pre">id</span></span></span><a class="headerlink" href="#c.PJ_UNITS.id" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Keyword for the unit.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_UNITS.to_meter">
+<span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="sig-name descname"><span class="n"><span class="pre">to_meter</span></span></span><a class="headerlink" href="#c.PJ_UNITS.to_meter" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Text representation of the factor that converts a given unit to meters</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_UNITS.name">
+<span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="sig-name descname"><span class="n"><span class="pre">name</span></span></span><a class="headerlink" href="#c.PJ_UNITS.name" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Name of the unit.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_UNITS.factor">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">factor</span></span></span><a class="headerlink" href="#c.PJ_UNITS.factor" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Conversion factor that converts the unit to meters.</p>
+</dd></dl>
+
+</dd></dl>
+
+<dl class="c type">
+<dt class="sig sig-object c" id="c.PJ_PRIME_MERIDIANS">
+<span class="k"><span class="pre">type</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_PRIME_MERIDIANS</span></span></span><a class="headerlink" href="#c.PJ_PRIME_MERIDIANS" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Prime meridians defined in PROJ.</p>
+<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="k">struct</span><span class="w"> </span><span class="nc">PJ_PRIME_MERIDIANS</span><span class="w"> </span><span class="p">{</span><span class="w"></span>
+<span class="w"> </span><span class="k">const</span><span class="w"> </span><span class="kt">char</span><span class="w"> </span><span class="o">*</span><span class="n">id</span><span class="p">;</span><span class="w"></span>
+<span class="w"> </span><span class="k">const</span><span class="w"> </span><span class="kt">char</span><span class="w"> </span><span class="o">*</span><span class="n">defn</span><span class="p">;</span><span class="w"></span>
+<span class="p">};</span><span class="w"></span>
+</pre></div>
+</div>
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_PRIME_MERIDIANS.id">
+<span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="sig-name descname"><span class="n"><span class="pre">id</span></span></span><a class="headerlink" href="#c.PJ_PRIME_MERIDIANS.id" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Keyword for the prime meridian</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_PRIME_MERIDIANS.def">
+<span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="sig-name descname"><span class="n"><span class="pre">def</span></span></span><a class="headerlink" href="#c.PJ_PRIME_MERIDIANS.def" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Offset from Greenwich in DMS format.</p>
+</dd></dl>
+
+</dd></dl>
+
+</section>
+<section id="info-structures">
+<h2>Info structures<a class="headerlink" href="#info-structures" title="Permalink to this headline">¶</a></h2>
+<dl class="c type">
+<dt class="sig sig-object c" id="c.PJ_INFO">
+<span class="k"><span class="pre">type</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_INFO</span></span></span><a class="headerlink" href="#c.PJ_INFO" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Struct holding information about the current instance of PROJ. Struct is
+populated by <a class="reference internal" href="functions.html#c.proj_info" title="proj_info"><code class="xref c c-func docutils literal notranslate"><span class="pre">proj_info()</span></code></a>.</p>
+<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="k">typedef</span><span class="w"> </span><span class="k">struct</span><span class="w"> </span><span class="p">{</span><span class="w"></span>
+<span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="n">major</span><span class="p">;</span><span class="w"></span>
+<span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="n">minor</span><span class="p">;</span><span class="w"></span>
+<span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="n">patch</span><span class="p">;</span><span class="w"></span>
+<span class="w"> </span><span class="k">const</span><span class="w"> </span><span class="kt">char</span><span class="w"> </span><span class="o">*</span><span class="n">release</span><span class="p">;</span><span class="w"></span>
+<span class="w"> </span><span class="k">const</span><span class="w"> </span><span class="kt">char</span><span class="w"> </span><span class="o">*</span><span class="n">version</span><span class="p">;</span><span class="w"></span>
+<span class="w"> </span><span class="k">const</span><span class="w"> </span><span class="kt">char</span><span class="w"> </span><span class="o">*</span><span class="n">searchpath</span><span class="p">;</span><span class="w"></span>
+<span class="p">}</span><span class="w"> </span><span class="n">PJ_INFO</span><span class="p">;</span><span class="w"></span>
+</pre></div>
+</div>
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_INFO.PJ_INFO.release">
+<span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_INFO</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">release</span></span></span><a class="headerlink" href="#c.PJ_INFO.PJ_INFO.release" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Release info. Version number and release date,
+e.g. “Rel. 4.9.3, 15 August 2016”.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_INFO.PJ_INFO.version">
+<span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_INFO</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">version</span></span></span><a class="headerlink" href="#c.PJ_INFO.PJ_INFO.version" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Text representation of the full version number,
+e.g. “4.9.3”.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_INFO.PJ_INFO.major">
+<span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_INFO</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">major</span></span></span><a class="headerlink" href="#c.PJ_INFO.PJ_INFO.major" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Major version number.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_INFO.PJ_INFO.minor">
+<span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_INFO</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">minor</span></span></span><a class="headerlink" href="#c.PJ_INFO.PJ_INFO.minor" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Minor version number.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_INFO.PJ_INFO.patch">
+<span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_INFO</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">patch</span></span></span><a class="headerlink" href="#c.PJ_INFO.PJ_INFO.patch" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Patch level of release.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_INFO.PJ_INFO.searchpath">
+<span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_INFO</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">searchpath</span></span></span><a class="headerlink" href="#c.PJ_INFO.PJ_INFO.searchpath" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Search path for PROJ. List of directories separated by
+semicolons (Windows) or colons (non-Windows), e.g.
+<code class="docutils literal notranslate"><span class="pre">C:\\Users\\doctorwho;C:\\OSGeo4W64\\share\\proj</span></code>.
+Grids and <a class="reference internal" href="../../resource_files.html#init-files"><span class="std std-ref">init files</span></a> are looked for in
+directories in the search path.</p>
+</dd></dl>
+
+</dd></dl>
+
+<dl class="c type">
+<dt class="sig sig-object c" id="c.PJ_PROJ_INFO">
+<span class="k"><span class="pre">type</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_PROJ_INFO</span></span></span><a class="headerlink" href="#c.PJ_PROJ_INFO" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Struct holding information about a <a class="reference internal" href="#c.PJ" title="PJ"><code class="xref c c-type docutils literal notranslate"><span class="pre">PJ</span></code></a> object. Populated by
+<a class="reference internal" href="functions.html#c.proj_pj_info" title="proj_pj_info"><code class="xref c c-func docutils literal notranslate"><span class="pre">proj_pj_info()</span></code></a>. The <a class="reference internal" href="#c.PJ_PROJ_INFO" title="PJ_PROJ_INFO"><code class="xref c c-type docutils literal notranslate"><span class="pre">PJ_PROJ_INFO</span></code></a> object provides a
+view into the internals of a <a class="reference internal" href="#c.PJ" title="PJ"><code class="xref c c-type docutils literal notranslate"><span class="pre">PJ</span></code></a>, so once the <a class="reference internal" href="#c.PJ" title="PJ"><code class="xref c c-type docutils literal notranslate"><span class="pre">PJ</span></code></a>
+is destroyed or otherwise becomes invalid, so does the
+<a class="reference internal" href="#c.PJ_PROJ_INFO" title="PJ_PROJ_INFO"><code class="xref c c-type docutils literal notranslate"><span class="pre">PJ_PROJ_INFO</span></code></a></p>
+<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="k">typedef</span><span class="w"> </span><span class="k">struct</span><span class="w"> </span><span class="p">{</span><span class="w"></span>
+<span class="w"> </span><span class="k">const</span><span class="w"> </span><span class="kt">char</span><span class="w"> </span><span class="o">*</span><span class="n">id</span><span class="p">;</span><span class="w"></span>
+<span class="w"> </span><span class="k">const</span><span class="w"> </span><span class="kt">char</span><span class="w"> </span><span class="o">*</span><span class="n">description</span><span class="p">;</span><span class="w"></span>
+<span class="w"> </span><span class="k">const</span><span class="w"> </span><span class="kt">char</span><span class="w"> </span><span class="o">*</span><span class="n">definition</span><span class="p">;</span><span class="w"></span>
+<span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="n">has_inverse</span><span class="p">;</span><span class="w"></span>
+<span class="w"> </span><span class="kt">double</span><span class="w"> </span><span class="n">accuracy</span><span class="p">;</span><span class="w"></span>
+<span class="p">}</span><span class="w"> </span><span class="n">PJ_PROJ_INFO</span><span class="p">;</span><span class="w"></span>
+</pre></div>
+</div>
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_PROJ_INFO.PJ_PROJ_INFO.id">
+<span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_PROJ_INFO</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">id</span></span></span><a class="headerlink" href="#c.PJ_PROJ_INFO.PJ_PROJ_INFO.id" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Short ID of the operation the <a class="reference internal" href="#c.PJ" title="PJ"><code class="xref c c-type docutils literal notranslate"><span class="pre">PJ</span></code></a> object is based on, that is,
+what comes after the <code class="docutils literal notranslate"><span class="pre">+proj=</span></code> in a proj-string, e.g. “<em>merc</em>”.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_PROJ_INFO.PJ_PROJ_INFO.description">
+<span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_PROJ_INFO</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">description</span></span></span><a class="headerlink" href="#c.PJ_PROJ_INFO.PJ_PROJ_INFO.description" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Long describes of the operation the <a class="reference internal" href="#c.PJ" title="PJ"><code class="xref c c-type docutils literal notranslate"><span class="pre">PJ</span></code></a> object is based on,
+e.g. “<em>Mercator Cyl, Sph&amp;Ell lat_ts=</em>”.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_PROJ_INFO.PJ_PROJ_INFO.definition">
+<span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_PROJ_INFO</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">definition</span></span></span><a class="headerlink" href="#c.PJ_PROJ_INFO.PJ_PROJ_INFO.definition" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>The proj-string that was used to create the <a class="reference internal" href="#c.PJ" title="PJ"><code class="xref c c-type docutils literal notranslate"><span class="pre">PJ</span></code></a> object with,
+e.g. “<em>+proj=merc +lat_0=24 +lon_0=53 +ellps=WGS84</em>”.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_PROJ_INFO.PJ_PROJ_INFO.has_inverse">
+<span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_PROJ_INFO</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">has_inverse</span></span></span><a class="headerlink" href="#c.PJ_PROJ_INFO.PJ_PROJ_INFO.has_inverse" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>1 if an inverse mapping of the defined operation exists, otherwise 0.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_PROJ_INFO.PJ_PROJ_INFO.accuracy">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_PROJ_INFO</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">accuracy</span></span></span><a class="headerlink" href="#c.PJ_PROJ_INFO.PJ_PROJ_INFO.accuracy" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Expected accuracy of the transformation. -1 if unknown.</p>
+</dd></dl>
+
+</dd></dl>
+
+<dl class="c type">
+<dt class="sig sig-object c" id="c.PJ_GRID_INFO">
+<span class="k"><span class="pre">type</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_GRID_INFO</span></span></span><a class="headerlink" href="#c.PJ_GRID_INFO" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Struct holding information about a specific grid in the search path of
+PROJ. Populated with the function <a class="reference internal" href="functions.html#c.proj_grid_info" title="proj_grid_info"><code class="xref c c-func docutils literal notranslate"><span class="pre">proj_grid_info()</span></code></a>.</p>
+<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="k">typedef</span><span class="w"> </span><span class="k">struct</span><span class="w"> </span><span class="p">{</span><span class="w"></span>
+<span class="w"> </span><span class="kt">char</span><span class="w"> </span><span class="n">gridname</span><span class="p">[</span><span class="mi">32</span><span class="p">];</span><span class="w"></span>
+<span class="w"> </span><span class="kt">char</span><span class="w"> </span><span class="n">filename</span><span class="p">[</span><span class="mi">260</span><span class="p">];</span><span class="w"></span>
+<span class="w"> </span><span class="kt">char</span><span class="w"> </span><span class="n">format</span><span class="p">[</span><span class="mi">8</span><span class="p">];</span><span class="w"></span>
+<span class="w"> </span><span class="n">LP</span><span class="w"> </span><span class="n">lowerleft</span><span class="p">;</span><span class="w"></span>
+<span class="w"> </span><span class="n">LP</span><span class="w"> </span><span class="n">upperright</span><span class="p">;</span><span class="w"></span>
+<span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="n">n_lon</span><span class="p">,</span><span class="w"> </span><span class="n">n_lat</span><span class="p">;</span><span class="w"></span>
+<span class="w"> </span><span class="kt">double</span><span class="w"> </span><span class="n">cs_lon</span><span class="p">,</span><span class="w"> </span><span class="n">cs_lat</span><span class="p">;</span><span class="w"></span>
+<span class="p">}</span><span class="w"> </span><span class="n">PJ_GRID_INFO</span><span class="p">;</span><span class="w"></span>
+</pre></div>
+</div>
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_GRID_INFO.PJ_GRID_INFO.gridname">
+<span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="sig-prename descclassname"><a class="reference internal" href="#c.PJ_GRID_INFO.PJ_GRID_INFO" title="PJ_GRID_INFO"><span class="n"><span class="pre">PJ_GRID_INFO</span></span></a><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">gridname</span></span></span><span class="p"><span class="pre">[</span></span><span class="m"><span class="pre">32</span></span><span class="p"><span class="pre">]</span></span><a class="headerlink" href="#c.PJ_GRID_INFO.PJ_GRID_INFO.gridname" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Name of grid, e.g. “<em>BETA2007.gsb</em>”.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_GRID_INFO.PJ_GRID_INFO">
+<span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_GRID_INFO</span></span></span><a class="headerlink" href="#c.PJ_GRID_INFO.PJ_GRID_INFO" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Full path of grid file, e.g. <em>“C:\OSGeo4W64\share\proj\BETA2007.gsb”</em></p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_GRID_INFO.PJ_GRID_INFO.format">
+<span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="sig-prename descclassname"><a class="reference internal" href="#c.PJ_GRID_INFO.PJ_GRID_INFO" title="PJ_GRID_INFO"><span class="n"><span class="pre">PJ_GRID_INFO</span></span></a><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">format</span></span></span><span class="p"><span class="pre">[</span></span><span class="m"><span class="pre">8</span></span><span class="p"><span class="pre">]</span></span><a class="headerlink" href="#c.PJ_GRID_INFO.PJ_GRID_INFO.format" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>File format of grid file, e.g. “<em>ntv2</em>”</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_GRID_INFO.PJ_GRID_INFO.lowerleft">
+<span class="n"><span class="pre">LP</span></span><span class="w"> </span><span class="sig-prename descclassname"><a class="reference internal" href="#c.PJ_GRID_INFO.PJ_GRID_INFO" title="PJ_GRID_INFO"><span class="n"><span class="pre">PJ_GRID_INFO</span></span></a><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">lowerleft</span></span></span><a class="headerlink" href="#c.PJ_GRID_INFO.PJ_GRID_INFO.lowerleft" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Geodetic coordinate of lower left corner of grid.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_GRID_INFO.PJ_GRID_INFO.upperright">
+<span class="n"><span class="pre">LP</span></span><span class="w"> </span><span class="sig-prename descclassname"><a class="reference internal" href="#c.PJ_GRID_INFO.PJ_GRID_INFO" title="PJ_GRID_INFO"><span class="n"><span class="pre">PJ_GRID_INFO</span></span></a><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">upperright</span></span></span><a class="headerlink" href="#c.PJ_GRID_INFO.PJ_GRID_INFO.upperright" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Geodetic coordinate of upper right corner of grid.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_GRID_INFO.PJ_GRID_INFO.n_lon">
+<span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="sig-prename descclassname"><a class="reference internal" href="#c.PJ_GRID_INFO.PJ_GRID_INFO" title="PJ_GRID_INFO"><span class="n"><span class="pre">PJ_GRID_INFO</span></span></a><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">n_lon</span></span></span><a class="headerlink" href="#c.PJ_GRID_INFO.PJ_GRID_INFO.n_lon" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Number of grid cells in the longitudinal direction.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_GRID_INFO.PJ_GRID_INFO.n_lat">
+<span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="sig-prename descclassname"><a class="reference internal" href="#c.PJ_GRID_INFO.PJ_GRID_INFO" title="PJ_GRID_INFO"><span class="n"><span class="pre">PJ_GRID_INFO</span></span></a><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">n_lat</span></span></span><a class="headerlink" href="#c.PJ_GRID_INFO.PJ_GRID_INFO.n_lat" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Number of grid cells in the latitudinal direction.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_GRID_INFO.PJ_GRID_INFO.cs_lon">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><a class="reference internal" href="#c.PJ_GRID_INFO.PJ_GRID_INFO" title="PJ_GRID_INFO"><span class="n"><span class="pre">PJ_GRID_INFO</span></span></a><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">cs_lon</span></span></span><a class="headerlink" href="#c.PJ_GRID_INFO.PJ_GRID_INFO.cs_lon" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Cell size in the longitudinal direction. In radians.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_GRID_INFO.PJ_GRID_INFO.cs_lat">
+<span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-prename descclassname"><a class="reference internal" href="#c.PJ_GRID_INFO.PJ_GRID_INFO" title="PJ_GRID_INFO"><span class="n"><span class="pre">PJ_GRID_INFO</span></span></a><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">cs_lat</span></span></span><a class="headerlink" href="#c.PJ_GRID_INFO.PJ_GRID_INFO.cs_lat" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Cell size in the latitudinal direction. In radians.</p>
+</dd></dl>
+
+</dd></dl>
+
+<dl class="c type">
+<dt class="sig sig-object c" id="c.PJ_INIT_INFO">
+<span class="k"><span class="pre">type</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_INIT_INFO</span></span></span><a class="headerlink" href="#c.PJ_INIT_INFO" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Struct holding information about a specific init file in the search path of
+PROJ. Populated with the function <a class="reference internal" href="functions.html#c.proj_init_info" title="proj_init_info"><code class="xref c c-func docutils literal notranslate"><span class="pre">proj_init_info()</span></code></a>.</p>
+<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="k">typedef</span><span class="w"> </span><span class="k">struct</span><span class="w"> </span><span class="p">{</span><span class="w"></span>
+<span class="w"> </span><span class="kt">char</span><span class="w"> </span><span class="n">name</span><span class="p">[</span><span class="mi">32</span><span class="p">];</span><span class="w"></span>
+<span class="w"> </span><span class="kt">char</span><span class="w"> </span><span class="n">filename</span><span class="p">[</span><span class="mi">260</span><span class="p">];</span><span class="w"></span>
+<span class="w"> </span><span class="kt">char</span><span class="w"> </span><span class="n">version</span><span class="p">[</span><span class="mi">32</span><span class="p">];</span><span class="w"></span>
+<span class="w"> </span><span class="kt">char</span><span class="w"> </span><span class="n">origin</span><span class="p">[</span><span class="mi">32</span><span class="p">];</span><span class="w"></span>
+<span class="w"> </span><span class="kt">char</span><span class="w"> </span><span class="n">lastupdate</span><span class="p">[</span><span class="mi">16</span><span class="p">];</span><span class="w"></span>
+<span class="p">}</span><span class="w"> </span><span class="n">PJ_INIT_INFO</span><span class="p">;</span><span class="w"></span>
+</pre></div>
+</div>
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_INIT_INFO.PJ_INIT_INFO.name">
+<span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_INIT_INFO</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">name</span></span></span><span class="p"><span class="pre">[</span></span><span class="m"><span class="pre">32</span></span><span class="p"><span class="pre">]</span></span><a class="headerlink" href="#c.PJ_INIT_INFO.PJ_INIT_INFO.name" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Name of init file, e.g. “<em>epsg</em>”.</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_INIT_INFO.PJ_INIT_INFO.filename">
+<span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_INIT_INFO</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">filename</span></span></span><span class="p"><span class="pre">[</span></span><span class="m"><span class="pre">260</span></span><span class="p"><span class="pre">]</span></span><a class="headerlink" href="#c.PJ_INIT_INFO.PJ_INIT_INFO.filename" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Full path of init file, e.g. “<em>C:\OSGeo4W64\share\proj\epsg</em>”</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_INIT_INFO.PJ_INIT_INFO.version">
+<span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_INIT_INFO</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">version</span></span></span><span class="p"><span class="pre">[</span></span><span class="m"><span class="pre">32</span></span><span class="p"><span class="pre">]</span></span><a class="headerlink" href="#c.PJ_INIT_INFO.PJ_INIT_INFO.version" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Version number of init file, e.g. “<em>9.0.0</em>”</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_INIT_INFO.PJ_INIT_INFO.origin">
+<span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_INIT_INFO</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">origin</span></span></span><span class="p"><span class="pre">[</span></span><span class="m"><span class="pre">32</span></span><span class="p"><span class="pre">]</span></span><a class="headerlink" href="#c.PJ_INIT_INFO.PJ_INIT_INFO.origin" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Originating entity of the init file, e.g. “<em>EPSG</em>”</p>
+</dd></dl>
+
+<dl class="c member">
+<dt class="sig sig-object c" id="c.PJ_INIT_INFO.PJ_INIT_INFO.lastupdate">
+<span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">PJ_INIT_INFO</span></span><span class="p"><span class="pre">.</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">lastupdate</span></span></span><a class="headerlink" href="#c.PJ_INIT_INFO.PJ_INIT_INFO.lastupdate" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Date of last update of the init file.</p>
+</dd></dl>
+
+</dd></dl>
+
+</section>
+<section id="error-codes">
+<span id="id2"></span><h2>Error codes<a class="headerlink" href="#error-codes" title="Permalink to this headline">¶</a></h2>
+<div class="versionadded">
+<p><span class="versionmodified added">New in version 8.0.0.</span></p>
+</div>
+<p>Three classes of errors are defined below. The belonging of a given error
+code to a class can bit tested with a binary and test. The error class itself
+can be used as an error value in some rare cases where the error does not
+fit into a more precise error value.</p>
+<p>Those error codes are still quite generic for a number of them. Details on the
+actual errors will be typically logged with the PJ_LOG_ERROR level.</p>
+<section id="errors-in-class-proj-err-invalid-op">
+<h3>Errors in class PROJ_ERR_INVALID_OP<a class="headerlink" href="#errors-in-class-proj-err-invalid-op" title="Permalink to this headline">¶</a></h3>
+<dl class="c macro">
+<dt class="sig sig-object c" id="c.PROJ_ERR_INVALID_OP">
+<span class="sig-name descname"><span class="n"><span class="pre">PROJ_ERR_INVALID_OP</span></span></span><a class="headerlink" href="#c.PROJ_ERR_INVALID_OP" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Class of error codes typically related to coordinate operation initialization,
+typically when creating a PJ* object from a PROJ string.</p>
+<div class="admonition note">
+<p class="admonition-title">Note</p>
+<p>some of them can also be emitted during coordinate transformation,
+like PROJ_ERR_INVALID_OP_FILE_NOT_FOUND_OR_INVALID in case the resource loading
+is deferred until it is really needed.</p>
+</div>
+</dd></dl>
+
+<dl class="c macro">
+<dt class="sig sig-object c" id="c.PROJ_ERR_INVALID_OP_WRONG_SYNTAX">
+<span class="sig-name descname"><span class="n"><span class="pre">PROJ_ERR_INVALID_OP_WRONG_SYNTAX</span></span></span><a class="headerlink" href="#c.PROJ_ERR_INVALID_OP_WRONG_SYNTAX" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Invalid pipeline structure, missing +proj argument, etc.</p>
+</dd></dl>
+
+<dl class="c macro">
+<dt class="sig sig-object c" id="c.PROJ_ERR_INVALID_OP_MISSING_ARG">
+<span class="sig-name descname"><span class="n"><span class="pre">PROJ_ERR_INVALID_OP_MISSING_ARG</span></span></span><a class="headerlink" href="#c.PROJ_ERR_INVALID_OP_MISSING_ARG" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Missing required operation parameter</p>
+</dd></dl>
+
+<dl class="c macro">
+<dt class="sig sig-object c" id="c.PROJ_ERR_INVALID_OP_ILLEGAL_ARG_VALUE">
+<span class="sig-name descname"><span class="n"><span class="pre">PROJ_ERR_INVALID_OP_ILLEGAL_ARG_VALUE</span></span></span><a class="headerlink" href="#c.PROJ_ERR_INVALID_OP_ILLEGAL_ARG_VALUE" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>One of the operation parameter has an illegal value.</p>
+</dd></dl>
+
+<dl class="c macro">
+<dt class="sig sig-object c" id="c.PROJ_ERR_INVALID_OP_MUTUALLY_EXCLUSIVE_ARGS">
+<span class="sig-name descname"><span class="n"><span class="pre">PROJ_ERR_INVALID_OP_MUTUALLY_EXCLUSIVE_ARGS</span></span></span><a class="headerlink" href="#c.PROJ_ERR_INVALID_OP_MUTUALLY_EXCLUSIVE_ARGS" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Mutually exclusive arguments</p>
+</dd></dl>
+
+<dl class="c macro">
+<dt class="sig sig-object c" id="c.PROJ_ERR_INVALID_OP_FILE_NOT_FOUND_OR_INVALID">
+<span class="sig-name descname"><span class="n"><span class="pre">PROJ_ERR_INVALID_OP_FILE_NOT_FOUND_OR_INVALID</span></span></span><a class="headerlink" href="#c.PROJ_ERR_INVALID_OP_FILE_NOT_FOUND_OR_INVALID" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>File not found or with invalid content (particular case of PROJ_ERR_INVALID_OP_ILLEGAL_ARG_VALUE)</p>
+</dd></dl>
+
+</section>
+<section id="errors-in-class-proj-err-coord-transfm">
+<h3>Errors in class PROJ_ERR_COORD_TRANSFM<a class="headerlink" href="#errors-in-class-proj-err-coord-transfm" title="Permalink to this headline">¶</a></h3>
+<dl class="c macro">
+<dt class="sig sig-object c" id="c.PROJ_ERR_COORD_TRANSFM">
+<span class="sig-name descname"><span class="n"><span class="pre">PROJ_ERR_COORD_TRANSFM</span></span></span><a class="headerlink" href="#c.PROJ_ERR_COORD_TRANSFM" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Class of error codes related to transformation on a specific coordinate.</p>
+</dd></dl>
+
+<dl class="c macro">
+<dt class="sig sig-object c" id="c.PROJ_ERR_COORD_TRANSFM_INVALID_COORD">
+<span class="sig-name descname"><span class="n"><span class="pre">PROJ_ERR_COORD_TRANSFM_INVALID_COORD</span></span></span><a class="headerlink" href="#c.PROJ_ERR_COORD_TRANSFM_INVALID_COORD" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Invalid input coordinate. e.g. a latitude &gt; 90°.</p>
+</dd></dl>
+
+<dl class="c macro">
+<dt class="sig sig-object c" id="c.PROJ_ERR_COORD_TRANSFM_OUTSIDE_PROJECTION_DOMAIN">
+<span class="sig-name descname"><span class="n"><span class="pre">PROJ_ERR_COORD_TRANSFM_OUTSIDE_PROJECTION_DOMAIN</span></span></span><a class="headerlink" href="#c.PROJ_ERR_COORD_TRANSFM_OUTSIDE_PROJECTION_DOMAIN" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Coordinate is outside of the projection domain. e.g. approximate mercator
+with |longitude - lon_0| &gt; 90°, or iterative convergence method failed.</p>
+</dd></dl>
+
+<dl class="c macro">
+<dt class="sig sig-object c" id="c.PROJ_ERR_COORD_TRANSFM_NO_OPERATION">
+<span class="sig-name descname"><span class="n"><span class="pre">PROJ_ERR_COORD_TRANSFM_NO_OPERATION</span></span></span><a class="headerlink" href="#c.PROJ_ERR_COORD_TRANSFM_NO_OPERATION" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>No operation found, e.g. if no match the required accuracy, or if ballpark transformations
+were asked to not be used and they would be only such candidate.</p>
+</dd></dl>
+
+<dl class="c macro">
+<dt class="sig sig-object c" id="c.PROJ_ERR_COORD_TRANSFM_OUTSIDE_GRID">
+<span class="sig-name descname"><span class="n"><span class="pre">PROJ_ERR_COORD_TRANSFM_OUTSIDE_GRID</span></span></span><a class="headerlink" href="#c.PROJ_ERR_COORD_TRANSFM_OUTSIDE_GRID" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Point to transform falls outside grid/subgrid/TIN.</p>
+</dd></dl>
+
+<dl class="c macro">
+<dt class="sig sig-object c" id="c.PROJ_ERR_COORD_TRANSFM_GRID_AT_NODATA">
+<span class="sig-name descname"><span class="n"><span class="pre">PROJ_ERR_COORD_TRANSFM_GRID_AT_NODATA</span></span></span><a class="headerlink" href="#c.PROJ_ERR_COORD_TRANSFM_GRID_AT_NODATA" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Point to transform falls in a grid cell that evaluates to nodata.</p>
+</dd></dl>
+
+</section>
+<section id="errors-in-class-proj-err-other">
+<h3>Errors in class PROJ_ERR_OTHER<a class="headerlink" href="#errors-in-class-proj-err-other" title="Permalink to this headline">¶</a></h3>
+<dl class="c macro">
+<dt class="sig sig-object c" id="c.PROJ_ERR_OTHER">
+<span class="sig-name descname"><span class="n"><span class="pre">PROJ_ERR_OTHER</span></span></span><a class="headerlink" href="#c.PROJ_ERR_OTHER" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Class of error codes that do not fit into one of the above class.</p>
+</dd></dl>
+
+<dl class="c macro">
+<dt class="sig sig-object c" id="c.PROJ_ERR_OTHER_API_MISUSE">
+<span class="sig-name descname"><span class="n"><span class="pre">PROJ_ERR_OTHER_API_MISUSE</span></span></span><a class="headerlink" href="#c.PROJ_ERR_OTHER_API_MISUSE" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Error related to a misuse of PROJ API.</p>
+</dd></dl>
+
+<dl class="c macro">
+<dt class="sig sig-object c" id="c.PROJ_ERR_OTHER_NO_INVERSE_OP">
+<span class="sig-name descname"><span class="n"><span class="pre">PROJ_ERR_OTHER_NO_INVERSE_OP</span></span></span><a class="headerlink" href="#c.PROJ_ERR_OTHER_NO_INVERSE_OP" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>No inverse method available</p>
+</dd></dl>
+
+<dl class="c macro">
+<dt class="sig sig-object c" id="c.PROJ_ERR_OTHER_NETWORK_ERROR">
+<span class="sig-name descname"><span class="n"><span class="pre">PROJ_ERR_OTHER_NETWORK_ERROR</span></span></span><a class="headerlink" href="#c.PROJ_ERR_OTHER_NETWORK_ERROR" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Failure when accessing a network resource.</p>
+</dd></dl>
+
+</section>
+</section>
+<section id="logging">
+<h2>Logging<a class="headerlink" href="#logging" title="Permalink to this headline">¶</a></h2>
+<dl class="c type">
+<dt class="sig sig-object c" id="c.PJ_LOG_LEVEL">
+<span class="k"><span class="pre">type</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_LOG_LEVEL</span></span></span><a class="headerlink" href="#c.PJ_LOG_LEVEL" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Enum of logging levels in PROJ. Used to set the logging level in PROJ.
+Usually using <a class="reference internal" href="functions.html#c.proj_log_level" title="proj_log_level"><code class="xref c c-func docutils literal notranslate"><span class="pre">proj_log_level()</span></code></a>.</p>
+<dl class="cpp enumerator">
+<dt class="sig sig-object cpp" id="_CPPv411PJ_LOG_NONE">
+<span id="_CPPv311PJ_LOG_NONE"></span><span id="_CPPv211PJ_LOG_NONE"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_LOG_NONE</span></span></span><a class="headerlink" href="#_CPPv411PJ_LOG_NONE" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Don’t log anything.</p>
+</dd></dl>
+
+<dl class="cpp enumerator">
+<dt class="sig sig-object cpp" id="_CPPv412PJ_LOG_ERROR">
+<span id="_CPPv312PJ_LOG_ERROR"></span><span id="_CPPv212PJ_LOG_ERROR"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_LOG_ERROR</span></span></span><a class="headerlink" href="#_CPPv412PJ_LOG_ERROR" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Log only errors.</p>
+</dd></dl>
+
+<dl class="cpp enumerator">
+<dt class="sig sig-object cpp" id="_CPPv412PJ_LOG_DEBUG">
+<span id="_CPPv312PJ_LOG_DEBUG"></span><span id="_CPPv212PJ_LOG_DEBUG"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_LOG_DEBUG</span></span></span><a class="headerlink" href="#_CPPv412PJ_LOG_DEBUG" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Log errors and additional debug information.</p>
+</dd></dl>
+
+<dl class="cpp enumerator">
+<dt class="sig sig-object cpp" id="_CPPv412PJ_LOG_TRACE">
+<span id="_CPPv312PJ_LOG_TRACE"></span><span id="_CPPv212PJ_LOG_TRACE"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_LOG_TRACE</span></span></span><a class="headerlink" href="#_CPPv412PJ_LOG_TRACE" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Highest logging level. Log everything including very detailed debug
+information.</p>
+</dd></dl>
+
+<dl class="cpp enumerator">
+<dt class="sig sig-object cpp" id="_CPPv411PJ_LOG_TELL">
+<span id="_CPPv311PJ_LOG_TELL"></span><span id="_CPPv211PJ_LOG_TELL"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_LOG_TELL</span></span></span><a class="headerlink" href="#_CPPv411PJ_LOG_TELL" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Special logging level that when used in <a class="reference internal" href="functions.html#c.proj_log_level" title="proj_log_level"><code class="xref c c-func docutils literal notranslate"><span class="pre">proj_log_level()</span></code></a>
+will return the current logging level set in PROJ.</p>
+</dd></dl>
+
+<div class="versionadded">
+<p><span class="versionmodified added">New in version 5.1.0.</span></p>
+</div>
+</dd></dl>
+
+<dl class="c type">
+<dt class="sig sig-object c" id="c.PJ_LOG_FUNC">
+<span class="k"><span class="pre">type</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_LOG_FUNC</span></span></span><a class="headerlink" href="#c.PJ_LOG_FUNC" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Function prototype for the logging function used by PROJ.
+Defined as</p>
+<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="k">typedef</span><span class="w"> </span><span class="kt">void</span><span class="w"> </span><span class="p">(</span><span class="o">*</span><span class="n">PJ_LOG_FUNCTION</span><span class="p">)(</span><span class="kt">void</span><span class="w"> </span><span class="o">*</span><span class="p">,</span><span class="w"> </span><span class="kt">int</span><span class="p">,</span><span class="w"> </span><span class="k">const</span><span class="w"> </span><span class="kt">char</span><span class="w"> </span><span class="o">*</span><span class="p">);</span><span class="w"></span>
+</pre></div>
+</div>
+<p>where the first argument (void pointer) references a data structure used by the
+calling application, the second argument (int type) is used to set the logging level
+and the third argument (const char pointer) is the string that will be logged
+by the function.</p>
+<div class="versionadded">
+<p><span class="versionmodified added">New in version 5.1.0.</span></p>
+</div>
+</dd></dl>
+
+</section>
+<section id="setting-custom-i-o-functions">
+<h2>Setting custom I/O functions<a class="headerlink" href="#setting-custom-i-o-functions" title="Permalink to this headline">¶</a></h2>
+<div class="versionadded">
+<p><span class="versionmodified added">New in version 7.0.0.</span></p>
+</div>
+<dl class="c struct">
+<dt class="sig sig-object c" id="c.PROJ_FILE_API">
+<span class="target" id="structPROJ__FILE__API"></span><span class="k"><span class="pre">struct</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PROJ_FILE_API</span></span></span><a class="headerlink" href="#c.PROJ_FILE_API" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>File API callbacks </p>
+<div class="breathe-sectiondef docutils container">
+<p class="breathe-sectiondef-title rubric" id="breathe-section-title-public-members">Public Members</p>
+<dl class="c var">
+<dt class="sig sig-object c" id="c.PROJ_FILE_API.version">
+<span class="target" id="structPROJ__FILE__API_1a4f891168c59c1f6ba6a19d6c2c878b02"></span><span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">version</span></span></span><a class="headerlink" href="#c.PROJ_FILE_API.version" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Version of this structure. Should be set to 1 currently. </p>
+</dd></dl>
+
+<dl class="c var">
+<dt class="sig sig-object c" id="c.PROJ_FILE_API.open_cbk">
+<span class="target" id="structPROJ__FILE__API_1ac69881b562f9af380e34dcd637b50c86"></span><a class="reference internal" href="#c.PROJ_FILE_HANDLE" title="PROJ_FILE_HANDLE"><span class="n"><span class="pre">PROJ_FILE_HANDLE</span></span></a><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="p"><span class="pre">(</span></span><span class="p"><span class="pre">*</span></span><span class="sig-name descname"><span class="n"><span class="pre">open_cbk</span></span></span><span class="p"><span class="pre">)</span></span><span class="p"><span class="pre">(</span></span><a class="reference internal" href="#c.PJ_CONTEXT" title="PJ_CONTEXT"><span class="n"><span class="pre">PJ_CONTEXT</span></span></a><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">ctx</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">filename</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><a class="reference internal" href="#c.PROJ_OPEN_ACCESS" title="PROJ_OPEN_ACCESS"><span class="n"><span class="pre">PROJ_OPEN_ACCESS</span></span></a><span class="w"> </span><span class="n"><span class="pre">access</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">user_data</span></span><span class="p"><span class="pre">)</span></span><a class="headerlink" href="#c.PROJ_FILE_API.open_cbk" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Open file. Return NULL if error </p>
+</dd></dl>
+
+<dl class="c var">
+<dt class="sig sig-object c" id="c.PROJ_FILE_API.read_cbk">
+<span class="target" id="structPROJ__FILE__API_1a91768ec13104c0db9597529960355205"></span><span class="n"><span class="pre">size_t</span></span><span class="w"> </span><span class="p"><span class="pre">(</span></span><span class="p"><span class="pre">*</span></span><span class="sig-name descname"><span class="n"><span class="pre">read_cbk</span></span></span><span class="p"><span class="pre">)</span></span><span class="p"><span class="pre">(</span></span><a class="reference internal" href="#c.PJ_CONTEXT" title="PJ_CONTEXT"><span class="n"><span class="pre">PJ_CONTEXT</span></span></a><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">ctx</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><a class="reference internal" href="#c.PROJ_FILE_HANDLE" title="PROJ_FILE_HANDLE"><span class="n"><span class="pre">PROJ_FILE_HANDLE</span></span></a><span class="p"><span class="pre">*</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">buffer</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="n"><span class="pre">size_t</span></span><span class="w"> </span><span class="n"><span class="pre">sizeBytes</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">user_data</span></span><span class="p"><span class="pre">)</span></span><a class="headerlink" href="#c.PROJ_FILE_API.read_cbk" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Read sizeBytes into buffer from current position and return number of bytes read </p>
+</dd></dl>
+
+<dl class="c var">
+<dt class="sig sig-object c" id="c.PROJ_FILE_API.write_cbk">
+<span class="target" id="structPROJ__FILE__API_1a40873c451d9013b4384b3eb46a7088a5"></span><span class="n"><span class="pre">size_t</span></span><span class="w"> </span><span class="p"><span class="pre">(</span></span><span class="p"><span class="pre">*</span></span><span class="sig-name descname"><span class="n"><span class="pre">write_cbk</span></span></span><span class="p"><span class="pre">)</span></span><span class="p"><span class="pre">(</span></span><a class="reference internal" href="#c.PJ_CONTEXT" title="PJ_CONTEXT"><span class="n"><span class="pre">PJ_CONTEXT</span></span></a><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">ctx</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><a class="reference internal" href="#c.PROJ_FILE_HANDLE" title="PROJ_FILE_HANDLE"><span class="n"><span class="pre">PROJ_FILE_HANDLE</span></span></a><span class="p"><span class="pre">*</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">buffer</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="n"><span class="pre">size_t</span></span><span class="w"> </span><span class="n"><span class="pre">sizeBytes</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">user_data</span></span><span class="p"><span class="pre">)</span></span><a class="headerlink" href="#c.PROJ_FILE_API.write_cbk" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Write sizeBytes into buffer from current position and return number of bytes written </p>
+</dd></dl>
+
+<dl class="c var">
+<dt class="sig sig-object c" id="c.PROJ_FILE_API.seek_cbk">
+<span class="target" id="structPROJ__FILE__API_1a88cf4a20f3b76d79ff08b4cc338aee41"></span><span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="p"><span class="pre">(</span></span><span class="p"><span class="pre">*</span></span><span class="sig-name descname"><span class="n"><span class="pre">seek_cbk</span></span></span><span class="p"><span class="pre">)</span></span><span class="p"><span class="pre">(</span></span><a class="reference internal" href="#c.PJ_CONTEXT" title="PJ_CONTEXT"><span class="n"><span class="pre">PJ_CONTEXT</span></span></a><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">ctx</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><a class="reference internal" href="#c.PROJ_FILE_HANDLE" title="PROJ_FILE_HANDLE"><span class="n"><span class="pre">PROJ_FILE_HANDLE</span></span></a><span class="p"><span class="pre">*</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="kt"><span class="pre">long</span></span><span class="w"> </span><span class="kt"><span class="pre">long</span></span><span class="w"> </span><span class="n"><span class="pre">offset</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">whence</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">user_data</span></span><span class="p"><span class="pre">)</span></span><a class="headerlink" href="#c.PROJ_FILE_API.seek_cbk" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Seek to offset using whence=SEEK_SET/SEEK_CUR/SEEK_END. Return TRUE in case of success </p>
+</dd></dl>
+
+<dl class="c var">
+<dt class="sig sig-object c" id="c.PROJ_FILE_API.tell_cbk">
+<span class="target" id="structPROJ__FILE__API_1a1dc41a01e0aed13b5ba3ce17da6df46c"></span><span class="kt"><span class="pre">unsigned</span></span><span class="w"> </span><span class="kt"><span class="pre">long</span></span><span class="w"> </span><span class="kt"><span class="pre">long</span></span><span class="w"> </span><span class="p"><span class="pre">(</span></span><span class="p"><span class="pre">*</span></span><span class="sig-name descname"><span class="n"><span class="pre">tell_cbk</span></span></span><span class="p"><span class="pre">)</span></span><span class="p"><span class="pre">(</span></span><a class="reference internal" href="#c.PJ_CONTEXT" title="PJ_CONTEXT"><span class="n"><span class="pre">PJ_CONTEXT</span></span></a><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">ctx</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><a class="reference internal" href="#c.PROJ_FILE_HANDLE" title="PROJ_FILE_HANDLE"><span class="n"><span class="pre">PROJ_FILE_HANDLE</span></span></a><span class="p"><span class="pre">*</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">user_data</span></span><span class="p"><span class="pre">)</span></span><a class="headerlink" href="#c.PROJ_FILE_API.tell_cbk" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Return current file position </p>
+</dd></dl>
+
+<dl class="c var">
+<dt class="sig sig-object c" id="c.PROJ_FILE_API.close_cbk">
+<span class="target" id="structPROJ__FILE__API_1a7e4b5d429bdcc6c51dd593f8ac9b4f6f"></span><span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="p"><span class="pre">(</span></span><span class="p"><span class="pre">*</span></span><span class="sig-name descname"><span class="n"><span class="pre">close_cbk</span></span></span><span class="p"><span class="pre">)</span></span><span class="p"><span class="pre">(</span></span><a class="reference internal" href="#c.PJ_CONTEXT" title="PJ_CONTEXT"><span class="n"><span class="pre">PJ_CONTEXT</span></span></a><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">ctx</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><a class="reference internal" href="#c.PROJ_FILE_HANDLE" title="PROJ_FILE_HANDLE"><span class="n"><span class="pre">PROJ_FILE_HANDLE</span></span></a><span class="p"><span class="pre">*</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">user_data</span></span><span class="p"><span class="pre">)</span></span><a class="headerlink" href="#c.PROJ_FILE_API.close_cbk" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Close file </p>
+</dd></dl>
+
+<dl class="c var">
+<dt class="sig sig-object c" id="c.PROJ_FILE_API.exists_cbk">
+<span class="target" id="structPROJ__FILE__API_1a181d1d807269d5b4d2bc487394be8bc3"></span><span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="p"><span class="pre">(</span></span><span class="p"><span class="pre">*</span></span><span class="sig-name descname"><span class="n"><span class="pre">exists_cbk</span></span></span><span class="p"><span class="pre">)</span></span><span class="p"><span class="pre">(</span></span><a class="reference internal" href="#c.PJ_CONTEXT" title="PJ_CONTEXT"><span class="n"><span class="pre">PJ_CONTEXT</span></span></a><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">ctx</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">filename</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">user_data</span></span><span class="p"><span class="pre">)</span></span><a class="headerlink" href="#c.PROJ_FILE_API.exists_cbk" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Return TRUE if a file exists </p>
+</dd></dl>
+
+<dl class="c var">
+<dt class="sig sig-object c" id="c.PROJ_FILE_API.mkdir_cbk">
+<span class="target" id="structPROJ__FILE__API_1aaa6b829762cc60b964af38afb66ebbf5"></span><span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="p"><span class="pre">(</span></span><span class="p"><span class="pre">*</span></span><span class="sig-name descname"><span class="n"><span class="pre">mkdir_cbk</span></span></span><span class="p"><span class="pre">)</span></span><span class="p"><span class="pre">(</span></span><a class="reference internal" href="#c.PJ_CONTEXT" title="PJ_CONTEXT"><span class="n"><span class="pre">PJ_CONTEXT</span></span></a><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">ctx</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">filename</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">user_data</span></span><span class="p"><span class="pre">)</span></span><a class="headerlink" href="#c.PROJ_FILE_API.mkdir_cbk" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Return TRUE if directory exists or could be created </p>
+</dd></dl>
+
+<dl class="c var">
+<dt class="sig sig-object c" id="c.PROJ_FILE_API.unlink_cbk">
+<span class="target" id="structPROJ__FILE__API_1aa0de2fa05e1698229ca7537c3acafd79"></span><span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="p"><span class="pre">(</span></span><span class="p"><span class="pre">*</span></span><span class="sig-name descname"><span class="n"><span class="pre">unlink_cbk</span></span></span><span class="p"><span class="pre">)</span></span><span class="p"><span class="pre">(</span></span><a class="reference internal" href="#c.PJ_CONTEXT" title="PJ_CONTEXT"><span class="n"><span class="pre">PJ_CONTEXT</span></span></a><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">ctx</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">filename</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">user_data</span></span><span class="p"><span class="pre">)</span></span><a class="headerlink" href="#c.PROJ_FILE_API.unlink_cbk" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Return TRUE if file could be removed </p>
+</dd></dl>
+
+<dl class="c var">
+<dt class="sig sig-object c" id="c.PROJ_FILE_API.rename_cbk">
+<span class="target" id="structPROJ__FILE__API_1a58b16e53be3f5d1d0eec61b57e5c0bc5"></span><span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="p"><span class="pre">(</span></span><span class="p"><span class="pre">*</span></span><span class="sig-name descname"><span class="n"><span class="pre">rename_cbk</span></span></span><span class="p"><span class="pre">)</span></span><span class="p"><span class="pre">(</span></span><a class="reference internal" href="#c.PJ_CONTEXT" title="PJ_CONTEXT"><span class="n"><span class="pre">PJ_CONTEXT</span></span></a><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">ctx</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">oldPath</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">newPath</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">user_data</span></span><span class="p"><span class="pre">)</span></span><a class="headerlink" href="#c.PROJ_FILE_API.rename_cbk" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Return TRUE if file could be renamed </p>
+</dd></dl>
+
+</div>
+</dd></dl>
+
+<dl class="c type">
+<dt class="sig sig-object c" id="c.PROJ_FILE_HANDLE">
+<span class="target" id="proj_8h_1a576ca78c0ce0c613cc360f9c0843f788"></span><span class="k"><span class="pre">typedef</span></span><span class="w"> </span><span class="k"><span class="pre">struct</span></span><span class="w"> </span><a class="reference internal" href="#c.PROJ_FILE_HANDLE" title="PROJ_FILE_HANDLE"><span class="n"><span class="pre">PROJ_FILE_HANDLE</span></span></a><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PROJ_FILE_HANDLE</span></span></span><a class="headerlink" href="#c.PROJ_FILE_HANDLE" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Opaque structure for PROJ for a file handle. Implementations might cast it to their structure/class of choice. </p>
+</dd></dl>
+
+<dl class="c enum">
+<dt class="sig sig-object c" id="c.PROJ_OPEN_ACCESS">
+<span class="target" id="proj_8h_1ad466f4e5535c25a803fa10f5ec47f997"></span><span class="k"><span class="pre">enum</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PROJ_OPEN_ACCESS</span></span></span><a class="headerlink" href="#c.PROJ_OPEN_ACCESS" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Open access / mode </p>
+<p><em>Values:</em></p>
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PROJ_OPEN_ACCESS.PROJ_OPEN_ACCESS_READ_ONLY">
+<span class="target" id="proj_8h_1ad466f4e5535c25a803fa10f5ec47f997af2ba80849abee993eb10a6ffe8876ae7"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PROJ_OPEN_ACCESS_READ_ONLY</span></span></span><a class="headerlink" href="#c.PROJ_OPEN_ACCESS.PROJ_OPEN_ACCESS_READ_ONLY" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Read-only access. Equivalent to “rb” </p>
+</dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PROJ_OPEN_ACCESS.PROJ_OPEN_ACCESS_READ_UPDATE">
+<span class="target" id="proj_8h_1ad466f4e5535c25a803fa10f5ec47f997a81914ec3374ae193ca390645ebcc909d"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PROJ_OPEN_ACCESS_READ_UPDATE</span></span></span><a class="headerlink" href="#c.PROJ_OPEN_ACCESS.PROJ_OPEN_ACCESS_READ_UPDATE" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Read-update access. File should be created if not existing. Equivalent to “r+b” </p>
+</dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PROJ_OPEN_ACCESS.PROJ_OPEN_ACCESS_CREATE">
+<span class="target" id="proj_8h_1ad466f4e5535c25a803fa10f5ec47f997ad0d7748c3190392d10e4a6209b64f470"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PROJ_OPEN_ACCESS_CREATE</span></span></span><a class="headerlink" href="#c.PROJ_OPEN_ACCESS.PROJ_OPEN_ACCESS_CREATE" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Create access. File should be truncated to 0-byte if already existing. Equivalent to “w+b” </p>
+</dd></dl>
+
+</dd></dl>
+
+</section>
+<section id="network-related-functionality">
+<h2>Network related functionality<a class="headerlink" href="#network-related-functionality" title="Permalink to this headline">¶</a></h2>
+<div class="versionadded">
+<p><span class="versionmodified added">New in version 7.0.0.</span></p>
+</div>
+<dl class="c type">
+<dt class="sig sig-object c" id="c.PROJ_NETWORK_HANDLE">
+<span class="target" id="proj_8h_1a662f9a829bc5d35df6729ce7d4fecb04"></span><span class="k"><span class="pre">typedef</span></span><span class="w"> </span><span class="k"><span class="pre">struct</span></span><span class="w"> </span><a class="reference internal" href="#c.PROJ_NETWORK_HANDLE" title="PROJ_NETWORK_HANDLE"><span class="n"><span class="pre">PROJ_NETWORK_HANDLE</span></span></a><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PROJ_NETWORK_HANDLE</span></span></span><a class="headerlink" href="#c.PROJ_NETWORK_HANDLE" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Opaque structure for PROJ for a network handle. Implementations might cast it to their structure/class of choice. </p>
+</dd></dl>
+
+<dl class="c type">
+<dt class="sig sig-object c" id="c.proj_network_open_cbk_type">
+<span class="target" id="proj_8h_1acb853fa9db80d0d8d898a485e8376cc5"></span><span class="k"><span class="pre">typedef</span></span><span class="w"> </span><a class="reference internal" href="#c.PROJ_NETWORK_HANDLE" title="PROJ_NETWORK_HANDLE"><span class="n"><span class="pre">PROJ_NETWORK_HANDLE</span></span></a><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="p"><span class="pre">(</span></span><span class="p"><span class="pre">*</span></span><span class="sig-name descname"><span class="n"><span class="pre">proj_network_open_cbk_type</span></span></span><span class="p"><span class="pre">)</span></span><span class="p"><span class="pre">(</span></span><a class="reference internal" href="#c.PJ_CONTEXT" title="PJ_CONTEXT"><span class="n"><span class="pre">PJ_CONTEXT</span></span></a><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">ctx</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">url</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="kt"><span class="pre">unsigned</span></span><span class="w"> </span><span class="kt"><span class="pre">long</span></span><span class="w"> </span><span class="kt"><span class="pre">long</span></span><span class="w"> </span><span class="n"><span class="pre">offset</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="n"><span class="pre">size_t</span></span><span class="w"> </span><span class="n"><span class="pre">size_to_read</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">buffer</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="n"><span class="pre">size_t</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">out_size_read</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="n"><span class="pre">size_t</span></span><span class="w"> </span><span class="n"><span class="pre">error_string_max_size</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">out_error_string</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">user_data</span></span><span class="p"><span class="pre">)</span></span><a class="headerlink" href="#c.proj_network_open_cbk_type" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Network access: open callback</p>
+<p>Should try to read the size_to_read first bytes at the specified offset of the file given by URL url, and write them to buffer. *out_size_read should be updated with the actual amount of bytes read (== size_to_read if the file is larger than size_to_read). During this read, the implementation should make sure to store the HTTP headers from the server response to be able to respond to proj_network_get_header_value_cbk_type callback.</p>
+<p>error_string_max_size should be the maximum size that can be written into the out_error_string buffer (including terminating nul character).</p>
+<dl class="field-list simple">
+<dt class="field-odd">Return</dt>
+<dd class="field-odd"><p>a non-NULL opaque handle in case of success. </p>
+</dd>
+</dl>
+</dd></dl>
+
+<dl class="c type">
+<dt class="sig sig-object c" id="c.proj_network_close_cbk_type">
+<span class="target" id="proj_8h_1aaf732c562f9aff74e49302f1d15e616b"></span><span class="k"><span class="pre">typedef</span></span><span class="w"> </span><span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="p"><span class="pre">(</span></span><span class="p"><span class="pre">*</span></span><span class="sig-name descname"><span class="n"><span class="pre">proj_network_close_cbk_type</span></span></span><span class="p"><span class="pre">)</span></span><span class="p"><span class="pre">(</span></span><a class="reference internal" href="#c.PJ_CONTEXT" title="PJ_CONTEXT"><span class="n"><span class="pre">PJ_CONTEXT</span></span></a><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">ctx</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><a class="reference internal" href="#c.PROJ_NETWORK_HANDLE" title="PROJ_NETWORK_HANDLE"><span class="n"><span class="pre">PROJ_NETWORK_HANDLE</span></span></a><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">handle</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">user_data</span></span><span class="p"><span class="pre">)</span></span><a class="headerlink" href="#c.proj_network_close_cbk_type" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Network access: close callback </p>
+</dd></dl>
+
+<dl class="c type">
+<dt class="sig sig-object c" id="c.proj_network_get_header_value_cbk_type">
+<span class="target" id="proj_8h_1a5adb8137f1e0b8ccb9dde5aca10ce2d0"></span><span class="k"><span class="pre">typedef</span></span><span class="w"> </span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="p"><span class="pre">(</span></span><span class="p"><span class="pre">*</span></span><span class="sig-name descname"><span class="n"><span class="pre">proj_network_get_header_value_cbk_type</span></span></span><span class="p"><span class="pre">)</span></span><span class="p"><span class="pre">(</span></span><a class="reference internal" href="#c.PJ_CONTEXT" title="PJ_CONTEXT"><span class="n"><span class="pre">PJ_CONTEXT</span></span></a><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">ctx</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><a class="reference internal" href="#c.PROJ_NETWORK_HANDLE" title="PROJ_NETWORK_HANDLE"><span class="n"><span class="pre">PROJ_NETWORK_HANDLE</span></span></a><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">handle</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">header_name</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">user_data</span></span><span class="p"><span class="pre">)</span></span><a class="headerlink" href="#c.proj_network_get_header_value_cbk_type" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Network access: get HTTP headers </p>
+</dd></dl>
+
+<dl class="c type">
+<dt class="sig sig-object c" id="c.proj_network_read_range_type">
+<span class="target" id="proj_8h_1a560064e2b97a70a24a0d420c7881ade1"></span><span class="k"><span class="pre">typedef</span></span><span class="w"> </span><span class="n"><span class="pre">size_t</span></span><span class="w"> </span><span class="p"><span class="pre">(</span></span><span class="p"><span class="pre">*</span></span><span class="sig-name descname"><span class="n"><span class="pre">proj_network_read_range_type</span></span></span><span class="p"><span class="pre">)</span></span><span class="p"><span class="pre">(</span></span><a class="reference internal" href="#c.PJ_CONTEXT" title="PJ_CONTEXT"><span class="n"><span class="pre">PJ_CONTEXT</span></span></a><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">ctx</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><a class="reference internal" href="#c.PROJ_NETWORK_HANDLE" title="PROJ_NETWORK_HANDLE"><span class="n"><span class="pre">PROJ_NETWORK_HANDLE</span></span></a><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">handle</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="kt"><span class="pre">unsigned</span></span><span class="w"> </span><span class="kt"><span class="pre">long</span></span><span class="w"> </span><span class="kt"><span class="pre">long</span></span><span class="w"> </span><span class="n"><span class="pre">offset</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="n"><span class="pre">size_t</span></span><span class="w"> </span><span class="n"><span class="pre">size_to_read</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">buffer</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="n"><span class="pre">size_t</span></span><span class="w"> </span><span class="n"><span class="pre">error_string_max_size</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">out_error_string</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">user_data</span></span><span class="p"><span class="pre">)</span></span><a class="headerlink" href="#c.proj_network_read_range_type" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Network access: read range</p>
+<p>Read size_to_read bytes from handle, starting at offset, into buffer. During this read, the implementation should make sure to store the HTTP headers from the server response to be able to respond to proj_network_get_header_value_cbk_type callback.</p>
+<p>error_string_max_size should be the maximum size that can be written into the out_error_string buffer (including terminating nul character).</p>
+<dl class="field-list simple">
+<dt class="field-odd">Return</dt>
+<dd class="field-odd"><p>the number of bytes actually read (0 in case of error) </p>
+</dd>
+</dl>
+</dd></dl>
+
+</section>
+<section id="c-api-for-iso-19111-functionality">
+<h2>C API for ISO-19111 functionality<a class="headerlink" href="#c-api-for-iso-19111-functionality" title="Permalink to this headline">¶</a></h2>
+<dl class="c enum">
+<dt class="sig sig-object c" id="c.PJ_GUESSED_WKT_DIALECT">
+<span class="target" id="group__iso19111__types_1ga3453493087d771fdd594accba4a60e16"></span><span class="k"><span class="pre">enum</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_GUESSED_WKT_DIALECT</span></span></span><a class="headerlink" href="#c.PJ_GUESSED_WKT_DIALECT" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Guessed WKT “dialect”. </p>
+<p><em>Values:</em></p>
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_GUESSED_WKT_DIALECT.PJ_GUESSED_WKT2_2019">
+<span class="target" id="group__iso19111__types_1gga3453493087d771fdd594accba4a60e16ac68cb36e3ad209f1c2872bc6d5f42e35"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_GUESSED_WKT2_2019</span></span></span><a class="headerlink" href="#c.PJ_GUESSED_WKT_DIALECT.PJ_GUESSED_WKT2_2019" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p><a class="reference internal" href="cpp/cpp_general.html#general_doc_1WKT2_2019"><span class="std std-ref">WKT2:2019</span></a> </p>
+</dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_GUESSED_WKT_DIALECT.PJ_GUESSED_WKT2_2018">
+<span class="target" id="group__iso19111__types_1gga3453493087d771fdd594accba4a60e16a029cfc571334dcbea9815929b60d18ea"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_GUESSED_WKT2_2018</span></span></span><a class="headerlink" href="#c.PJ_GUESSED_WKT_DIALECT.PJ_GUESSED_WKT2_2018" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Deprecated alias for PJ_GUESSED_WKT2_2019 </p>
+</dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_GUESSED_WKT_DIALECT.PJ_GUESSED_WKT2_2015">
+<span class="target" id="group__iso19111__types_1gga3453493087d771fdd594accba4a60e16a3d6484a5fbdc3a2fc3ea8eb349f98c63"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_GUESSED_WKT2_2015</span></span></span><a class="headerlink" href="#c.PJ_GUESSED_WKT_DIALECT.PJ_GUESSED_WKT2_2015" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p><a class="reference internal" href="cpp/cpp_general.html#general_doc_1WKT2_2015"><span class="std std-ref">WKT2:2015</span></a> </p>
+</dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_GUESSED_WKT_DIALECT.PJ_GUESSED_WKT1_GDAL">
+<span class="target" id="group__iso19111__types_1gga3453493087d771fdd594accba4a60e16ac7cccffeb6901592ceba853c9586b6c4"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_GUESSED_WKT1_GDAL</span></span></span><a class="headerlink" href="#c.PJ_GUESSED_WKT_DIALECT.PJ_GUESSED_WKT1_GDAL" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p><a class="reference internal" href="cpp/cpp_general.html#general_doc_1WKT1"><span class="std std-ref">WKT1 specification</span></a> </p>
+</dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_GUESSED_WKT_DIALECT.PJ_GUESSED_WKT1_ESRI">
+<span class="target" id="group__iso19111__types_1gga3453493087d771fdd594accba4a60e16a9f287b70d8c417764f3ce64d138f37c1"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_GUESSED_WKT1_ESRI</span></span></span><a class="headerlink" href="#c.PJ_GUESSED_WKT_DIALECT.PJ_GUESSED_WKT1_ESRI" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>ESRI variant of WKT1 </p>
+</dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_GUESSED_WKT_DIALECT.PJ_GUESSED_NOT_WKT">
+<span class="target" id="group__iso19111__types_1gga3453493087d771fdd594accba4a60e16ad564d9c8fe177fd57079792ef1bf5c93"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_GUESSED_NOT_WKT</span></span></span><a class="headerlink" href="#c.PJ_GUESSED_WKT_DIALECT.PJ_GUESSED_NOT_WKT" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Not WKT / unrecognized </p>
+</dd></dl>
+
+</dd></dl>
+
+<dl class="c enum">
+<dt class="sig sig-object c" id="c.PJ_CATEGORY">
+<span class="target" id="group__iso19111__types_1ga26c44aece2b0119157cd4a061e45321f"></span><span class="k"><span class="pre">enum</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_CATEGORY</span></span></span><a class="headerlink" href="#c.PJ_CATEGORY" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Object category. </p>
+<p><em>Values:</em></p>
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_CATEGORY.PJ_CATEGORY_ELLIPSOID">
+<span class="target" id="group__iso19111__types_1gga26c44aece2b0119157cd4a061e45321fa267b5b7790dbae9478c80ff8173bbd87"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_CATEGORY_ELLIPSOID</span></span></span><a class="headerlink" href="#c.PJ_CATEGORY.PJ_CATEGORY_ELLIPSOID" title="Permalink to this definition">¶</a><br /></dt>
+<dd></dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_CATEGORY.PJ_CATEGORY_PRIME_MERIDIAN">
+<span class="target" id="group__iso19111__types_1gga26c44aece2b0119157cd4a061e45321fa2a045c87362b134719c3312fbc2e3626"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_CATEGORY_PRIME_MERIDIAN</span></span></span><a class="headerlink" href="#c.PJ_CATEGORY.PJ_CATEGORY_PRIME_MERIDIAN" title="Permalink to this definition">¶</a><br /></dt>
+<dd></dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_CATEGORY.PJ_CATEGORY_DATUM">
+<span class="target" id="group__iso19111__types_1gga26c44aece2b0119157cd4a061e45321fa5d467106687bbbf07471dd26bb930767"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_CATEGORY_DATUM</span></span></span><a class="headerlink" href="#c.PJ_CATEGORY.PJ_CATEGORY_DATUM" title="Permalink to this definition">¶</a><br /></dt>
+<dd></dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_CATEGORY.PJ_CATEGORY_CRS">
+<span class="target" id="group__iso19111__types_1gga26c44aece2b0119157cd4a061e45321fa20b0c0b71bc170f0095ba0f0b2dedc04"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_CATEGORY_CRS</span></span></span><a class="headerlink" href="#c.PJ_CATEGORY.PJ_CATEGORY_CRS" title="Permalink to this definition">¶</a><br /></dt>
+<dd></dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_CATEGORY.PJ_CATEGORY_COORDINATE_OPERATION">
+<span class="target" id="group__iso19111__types_1gga26c44aece2b0119157cd4a061e45321fa4e0cb1bd66738231c940e1c1b703779c"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_CATEGORY_COORDINATE_OPERATION</span></span></span><a class="headerlink" href="#c.PJ_CATEGORY.PJ_CATEGORY_COORDINATE_OPERATION" title="Permalink to this definition">¶</a><br /></dt>
+<dd></dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_CATEGORY.PJ_CATEGORY_DATUM_ENSEMBLE">
+<span class="target" id="group__iso19111__types_1gga26c44aece2b0119157cd4a061e45321faac922f4a8a213c460da9ab06fc69650c"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_CATEGORY_DATUM_ENSEMBLE</span></span></span><a class="headerlink" href="#c.PJ_CATEGORY.PJ_CATEGORY_DATUM_ENSEMBLE" title="Permalink to this definition">¶</a><br /></dt>
+<dd></dd></dl>
+
+</dd></dl>
+
+<dl class="c enum">
+<dt class="sig sig-object c" id="c.PJ_TYPE">
+<span class="target" id="group__iso19111__types_1ga0acde08a3427c34e551a61f758b31c48"></span><span class="k"><span class="pre">enum</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_TYPE</span></span></span><a class="headerlink" href="#c.PJ_TYPE" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Object type. </p>
+<p><em>Values:</em></p>
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_TYPE.PJ_TYPE_UNKNOWN">
+<span class="target" id="group__iso19111__types_1gga0acde08a3427c34e551a61f758b31c48a57a5968e08dceb6125ba83338a7ec8d9"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_TYPE_UNKNOWN</span></span></span><a class="headerlink" href="#c.PJ_TYPE.PJ_TYPE_UNKNOWN" title="Permalink to this definition">¶</a><br /></dt>
+<dd></dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_TYPE.PJ_TYPE_ELLIPSOID">
+<span class="target" id="group__iso19111__types_1gga0acde08a3427c34e551a61f758b31c48acc6dc371ce61d6876433ad5c9b375c62"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_TYPE_ELLIPSOID</span></span></span><a class="headerlink" href="#c.PJ_TYPE.PJ_TYPE_ELLIPSOID" title="Permalink to this definition">¶</a><br /></dt>
+<dd></dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_TYPE.PJ_TYPE_PRIME_MERIDIAN">
+<span class="target" id="group__iso19111__types_1gga0acde08a3427c34e551a61f758b31c48a33d5b10bc47c41b1dd69ccf79206bb02"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_TYPE_PRIME_MERIDIAN</span></span></span><a class="headerlink" href="#c.PJ_TYPE.PJ_TYPE_PRIME_MERIDIAN" title="Permalink to this definition">¶</a><br /></dt>
+<dd></dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_TYPE.PJ_TYPE_GEODETIC_REFERENCE_FRAME">
+<span class="target" id="group__iso19111__types_1gga0acde08a3427c34e551a61f758b31c48a524044e9fdfb3a28856ed26ce002a839"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_TYPE_GEODETIC_REFERENCE_FRAME</span></span></span><a class="headerlink" href="#c.PJ_TYPE.PJ_TYPE_GEODETIC_REFERENCE_FRAME" title="Permalink to this definition">¶</a><br /></dt>
+<dd></dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_TYPE.PJ_TYPE_DYNAMIC_GEODETIC_REFERENCE_FRAME">
+<span class="target" id="group__iso19111__types_1gga0acde08a3427c34e551a61f758b31c48a12c6dc5bb097da77b12c8171ffa45025"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_TYPE_DYNAMIC_GEODETIC_REFERENCE_FRAME</span></span></span><a class="headerlink" href="#c.PJ_TYPE.PJ_TYPE_DYNAMIC_GEODETIC_REFERENCE_FRAME" title="Permalink to this definition">¶</a><br /></dt>
+<dd></dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_TYPE.PJ_TYPE_VERTICAL_REFERENCE_FRAME">
+<span class="target" id="group__iso19111__types_1gga0acde08a3427c34e551a61f758b31c48a47395e639268df5179d523d1d90a1644"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_TYPE_VERTICAL_REFERENCE_FRAME</span></span></span><a class="headerlink" href="#c.PJ_TYPE.PJ_TYPE_VERTICAL_REFERENCE_FRAME" title="Permalink to this definition">¶</a><br /></dt>
+<dd></dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_TYPE.PJ_TYPE_DYNAMIC_VERTICAL_REFERENCE_FRAME">
+<span class="target" id="group__iso19111__types_1gga0acde08a3427c34e551a61f758b31c48a2f70ea96f538d676eaf701799bbd3946"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_TYPE_DYNAMIC_VERTICAL_REFERENCE_FRAME</span></span></span><a class="headerlink" href="#c.PJ_TYPE.PJ_TYPE_DYNAMIC_VERTICAL_REFERENCE_FRAME" title="Permalink to this definition">¶</a><br /></dt>
+<dd></dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_TYPE.PJ_TYPE_DATUM_ENSEMBLE">
+<span class="target" id="group__iso19111__types_1gga0acde08a3427c34e551a61f758b31c48ad49f38af8d2b775aa8a46e2199cb215f"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_TYPE_DATUM_ENSEMBLE</span></span></span><a class="headerlink" href="#c.PJ_TYPE.PJ_TYPE_DATUM_ENSEMBLE" title="Permalink to this definition">¶</a><br /></dt>
+<dd></dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_TYPE.PJ_TYPE_CRS">
+<span class="target" id="group__iso19111__types_1gga0acde08a3427c34e551a61f758b31c48a50fab9ac545eb788d3b99ae46cf7a4df"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_TYPE_CRS</span></span></span><a class="headerlink" href="#c.PJ_TYPE.PJ_TYPE_CRS" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Abstract type, not returned by <a class="reference internal" href="functions.html#group__iso19111__functions_1gabbebc66b740741b14c89afa398a1b58a"><span class="std std-ref">proj_get_type()</span></a> </p>
+</dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_TYPE.PJ_TYPE_GEODETIC_CRS">
+<span class="target" id="group__iso19111__types_1gga0acde08a3427c34e551a61f758b31c48ac264f6cfa24b6dacd1a61beb3076a943"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_TYPE_GEODETIC_CRS</span></span></span><a class="headerlink" href="#c.PJ_TYPE.PJ_TYPE_GEODETIC_CRS" title="Permalink to this definition">¶</a><br /></dt>
+<dd></dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_TYPE.PJ_TYPE_GEOCENTRIC_CRS">
+<span class="target" id="group__iso19111__types_1gga0acde08a3427c34e551a61f758b31c48ac02581472d98b2154ce6fe57d878b5fd"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_TYPE_GEOCENTRIC_CRS</span></span></span><a class="headerlink" href="#c.PJ_TYPE.PJ_TYPE_GEOCENTRIC_CRS" title="Permalink to this definition">¶</a><br /></dt>
+<dd></dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_TYPE.PJ_TYPE_GEOGRAPHIC_CRS">
+<span class="target" id="group__iso19111__types_1gga0acde08a3427c34e551a61f758b31c48a486bb5b77b77ea0fa4c08ea2e7a442d2"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_TYPE_GEOGRAPHIC_CRS</span></span></span><a class="headerlink" href="#c.PJ_TYPE.PJ_TYPE_GEOGRAPHIC_CRS" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p><a class="reference internal" href="functions.html#group__iso19111__functions_1gabbebc66b740741b14c89afa398a1b58a"><span class="std std-ref">proj_get_type()</span></a> will never return that type, but PJ_TYPE_GEOGRAPHIC_2D_CRS or PJ_TYPE_GEOGRAPHIC_3D_CRS. </p>
+</dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_TYPE.PJ_TYPE_GEOGRAPHIC_2D_CRS">
+<span class="target" id="group__iso19111__types_1gga0acde08a3427c34e551a61f758b31c48ac1334815360b8f6d855e5b3f41557fbb"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_TYPE_GEOGRAPHIC_2D_CRS</span></span></span><a class="headerlink" href="#c.PJ_TYPE.PJ_TYPE_GEOGRAPHIC_2D_CRS" title="Permalink to this definition">¶</a><br /></dt>
+<dd></dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_TYPE.PJ_TYPE_GEOGRAPHIC_3D_CRS">
+<span class="target" id="group__iso19111__types_1gga0acde08a3427c34e551a61f758b31c48a0850b6dace079215a2a4ccf954f72583"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_TYPE_GEOGRAPHIC_3D_CRS</span></span></span><a class="headerlink" href="#c.PJ_TYPE.PJ_TYPE_GEOGRAPHIC_3D_CRS" title="Permalink to this definition">¶</a><br /></dt>
+<dd></dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_TYPE.PJ_TYPE_VERTICAL_CRS">
+<span class="target" id="group__iso19111__types_1gga0acde08a3427c34e551a61f758b31c48ac201c7f8399a67dcdc562c05f04440e5"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_TYPE_VERTICAL_CRS</span></span></span><a class="headerlink" href="#c.PJ_TYPE.PJ_TYPE_VERTICAL_CRS" title="Permalink to this definition">¶</a><br /></dt>
+<dd></dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_TYPE.PJ_TYPE_PROJECTED_CRS">
+<span class="target" id="group__iso19111__types_1gga0acde08a3427c34e551a61f758b31c48a5dd43c0b67e5c235db4b322be686b849"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_TYPE_PROJECTED_CRS</span></span></span><a class="headerlink" href="#c.PJ_TYPE.PJ_TYPE_PROJECTED_CRS" title="Permalink to this definition">¶</a><br /></dt>
+<dd></dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_TYPE.PJ_TYPE_COMPOUND_CRS">
+<span class="target" id="group__iso19111__types_1gga0acde08a3427c34e551a61f758b31c48ab68e506427955b2bb500b43c9d485c7b"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_TYPE_COMPOUND_CRS</span></span></span><a class="headerlink" href="#c.PJ_TYPE.PJ_TYPE_COMPOUND_CRS" title="Permalink to this definition">¶</a><br /></dt>
+<dd></dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_TYPE.PJ_TYPE_TEMPORAL_CRS">
+<span class="target" id="group__iso19111__types_1gga0acde08a3427c34e551a61f758b31c48a087b9c8556561e039e930d26be25125c"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_TYPE_TEMPORAL_CRS</span></span></span><a class="headerlink" href="#c.PJ_TYPE.PJ_TYPE_TEMPORAL_CRS" title="Permalink to this definition">¶</a><br /></dt>
+<dd></dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_TYPE.PJ_TYPE_ENGINEERING_CRS">
+<span class="target" id="group__iso19111__types_1gga0acde08a3427c34e551a61f758b31c48a9b5f524347f7633c6752b78ac598b054"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_TYPE_ENGINEERING_CRS</span></span></span><a class="headerlink" href="#c.PJ_TYPE.PJ_TYPE_ENGINEERING_CRS" title="Permalink to this definition">¶</a><br /></dt>
+<dd></dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_TYPE.PJ_TYPE_BOUND_CRS">
+<span class="target" id="group__iso19111__types_1gga0acde08a3427c34e551a61f758b31c48a6c0e642276b62f53a0226429b4ee98da"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_TYPE_BOUND_CRS</span></span></span><a class="headerlink" href="#c.PJ_TYPE.PJ_TYPE_BOUND_CRS" title="Permalink to this definition">¶</a><br /></dt>
+<dd></dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_TYPE.PJ_TYPE_OTHER_CRS">
+<span class="target" id="group__iso19111__types_1gga0acde08a3427c34e551a61f758b31c48ab779dfbc7b8549d1e82c2c87a06e3447"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_TYPE_OTHER_CRS</span></span></span><a class="headerlink" href="#c.PJ_TYPE.PJ_TYPE_OTHER_CRS" title="Permalink to this definition">¶</a><br /></dt>
+<dd></dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_TYPE.PJ_TYPE_CONVERSION">
+<span class="target" id="group__iso19111__types_1gga0acde08a3427c34e551a61f758b31c48aff569c33ca372a5c3ef1cff3798c0e0e"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_TYPE_CONVERSION</span></span></span><a class="headerlink" href="#c.PJ_TYPE.PJ_TYPE_CONVERSION" title="Permalink to this definition">¶</a><br /></dt>
+<dd></dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_TYPE.PJ_TYPE_TRANSFORMATION">
+<span class="target" id="group__iso19111__types_1gga0acde08a3427c34e551a61f758b31c48a147a5e9401e176b5adf185ad60ac1219"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_TYPE_TRANSFORMATION</span></span></span><a class="headerlink" href="#c.PJ_TYPE.PJ_TYPE_TRANSFORMATION" title="Permalink to this definition">¶</a><br /></dt>
+<dd></dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_TYPE.PJ_TYPE_CONCATENATED_OPERATION">
+<span class="target" id="group__iso19111__types_1gga0acde08a3427c34e551a61f758b31c48a09bfe12de6575cd884068f32bb15d434"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_TYPE_CONCATENATED_OPERATION</span></span></span><a class="headerlink" href="#c.PJ_TYPE.PJ_TYPE_CONCATENATED_OPERATION" title="Permalink to this definition">¶</a><br /></dt>
+<dd></dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_TYPE.PJ_TYPE_OTHER_COORDINATE_OPERATION">
+<span class="target" id="group__iso19111__types_1gga0acde08a3427c34e551a61f758b31c48ac4a5417062c695850e4a0b6e67bddb11"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_TYPE_OTHER_COORDINATE_OPERATION</span></span></span><a class="headerlink" href="#c.PJ_TYPE.PJ_TYPE_OTHER_COORDINATE_OPERATION" title="Permalink to this definition">¶</a><br /></dt>
+<dd></dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_TYPE.PJ_TYPE_TEMPORAL_DATUM">
+<span class="target" id="group__iso19111__types_1gga0acde08a3427c34e551a61f758b31c48a8b7c99a8f5df0eeca402b45bf58fde47"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_TYPE_TEMPORAL_DATUM</span></span></span><a class="headerlink" href="#c.PJ_TYPE.PJ_TYPE_TEMPORAL_DATUM" title="Permalink to this definition">¶</a><br /></dt>
+<dd></dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_TYPE.PJ_TYPE_ENGINEERING_DATUM">
+<span class="target" id="group__iso19111__types_1gga0acde08a3427c34e551a61f758b31c48aa0aec4abf0e61df39e6e59fa96af2920"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_TYPE_ENGINEERING_DATUM</span></span></span><a class="headerlink" href="#c.PJ_TYPE.PJ_TYPE_ENGINEERING_DATUM" title="Permalink to this definition">¶</a><br /></dt>
+<dd></dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_TYPE.PJ_TYPE_PARAMETRIC_DATUM">
+<span class="target" id="group__iso19111__types_1gga0acde08a3427c34e551a61f758b31c48a056ecfe43d02bc0fbc2f6fdecab2d480"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_TYPE_PARAMETRIC_DATUM</span></span></span><a class="headerlink" href="#c.PJ_TYPE.PJ_TYPE_PARAMETRIC_DATUM" title="Permalink to this definition">¶</a><br /></dt>
+<dd></dd></dl>
+
+</dd></dl>
+
+<dl class="c enum">
+<dt class="sig sig-object c" id="c.PJ_COMPARISON_CRITERION">
+<span class="target" id="group__iso19111__types_1ga654e7e400a70ad33bfbb23d9d1df39ee"></span><span class="k"><span class="pre">enum</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_COMPARISON_CRITERION</span></span></span><a class="headerlink" href="#c.PJ_COMPARISON_CRITERION" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Comparison criterion. </p>
+<p><em>Values:</em></p>
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_COMPARISON_CRITERION.PJ_COMP_STRICT">
+<span class="target" id="group__iso19111__types_1gga654e7e400a70ad33bfbb23d9d1df39eea58a16adffac77f2ea0790c931a019cc2"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_COMP_STRICT</span></span></span><a class="headerlink" href="#c.PJ_COMPARISON_CRITERION.PJ_COMP_STRICT" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>All properties are identical. </p>
+</dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_COMPARISON_CRITERION.PJ_COMP_EQUIVALENT">
+<span class="target" id="group__iso19111__types_1gga654e7e400a70ad33bfbb23d9d1df39eea62f216b8be8636239b27e7cbe3da1c86"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_COMP_EQUIVALENT</span></span></span><a class="headerlink" href="#c.PJ_COMPARISON_CRITERION.PJ_COMP_EQUIVALENT" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>The objects are equivalent for the purpose of coordinate operations. They can differ by the name of their objects, identifiers, other metadata. Parameters may be expressed in different units, provided that the value is (with some tolerance) the same once expressed in a common unit. </p>
+</dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_COMPARISON_CRITERION.PJ_COMP_EQUIVALENT_EXCEPT_AXIS_ORDER_GEOGCRS">
+<span class="target" id="group__iso19111__types_1gga654e7e400a70ad33bfbb23d9d1df39eea403f7948c2c0127c5b23733727aa5809"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_COMP_EQUIVALENT_EXCEPT_AXIS_ORDER_GEOGCRS</span></span></span><a class="headerlink" href="#c.PJ_COMPARISON_CRITERION.PJ_COMP_EQUIVALENT_EXCEPT_AXIS_ORDER_GEOGCRS" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Same as EQUIVALENT, relaxed with an exception that the axis order of the base CRS of a DerivedCRS/ProjectedCRS or the axis order of a GeographicCRS is ignored. Only to be used with DerivedCRS/ProjectedCRS/GeographicCRS </p>
+</dd></dl>
+
+</dd></dl>
+
+<dl class="c enum">
+<dt class="sig sig-object c" id="c.PJ_WKT_TYPE">
+<span class="target" id="group__iso19111__types_1gaa2c2de23d90fe0d1d335f6184bff764c"></span><span class="k"><span class="pre">enum</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_WKT_TYPE</span></span></span><a class="headerlink" href="#c.PJ_WKT_TYPE" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>WKT version. </p>
+<p><em>Values:</em></p>
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_WKT_TYPE.PJ_WKT2_2015">
+<span class="target" id="group__iso19111__types_1ggaa2c2de23d90fe0d1d335f6184bff764ca2eb75464b58c0d53450e3f918beda107"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_WKT2_2015</span></span></span><a class="headerlink" href="#c.PJ_WKT_TYPE.PJ_WKT2_2015" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>cf <a class="reference internal" href="cpp/io.html#classosgeo_1_1proj_1_1io_1_1WKTFormatter_1ae94f4401c1eeae3808dce1aaa8d25f42acbbf33e2fa1d0e7754df8c2ab40bf7a2"><span class="std std-ref">osgeo::proj::io::WKTFormatter::Convention::WKT2</span></a> </p>
+</dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_WKT_TYPE.PJ_WKT2_2015_SIMPLIFIED">
+<span class="target" id="group__iso19111__types_1ggaa2c2de23d90fe0d1d335f6184bff764ca47783cb8b8618b947c792acc4704676c"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_WKT2_2015_SIMPLIFIED</span></span></span><a class="headerlink" href="#c.PJ_WKT_TYPE.PJ_WKT2_2015_SIMPLIFIED" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>cf <a class="reference internal" href="cpp/io.html#classosgeo_1_1proj_1_1io_1_1WKTFormatter_1ae94f4401c1eeae3808dce1aaa8d25f42a8a4e61323a3ab9204ff3ac3cd8b23c39"><span class="std std-ref">osgeo::proj::io::WKTFormatter::Convention::WKT2_SIMPLIFIED</span></a> </p>
+</dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_WKT_TYPE.PJ_WKT2_2019">
+<span class="target" id="group__iso19111__types_1ggaa2c2de23d90fe0d1d335f6184bff764ca385c236c0a6d8d0e32b7cb5b4f69da9e"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_WKT2_2019</span></span></span><a class="headerlink" href="#c.PJ_WKT_TYPE.PJ_WKT2_2019" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>cf <a class="reference internal" href="cpp/io.html#classosgeo_1_1proj_1_1io_1_1WKTFormatter_1ae94f4401c1eeae3808dce1aaa8d25f42ac634e196cf84127855e2ff4569674d0d"><span class="std std-ref">osgeo::proj::io::WKTFormatter::Convention::WKT2_2019</span></a> </p>
+</dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_WKT_TYPE.PJ_WKT2_2018">
+<span class="target" id="group__iso19111__types_1ggaa2c2de23d90fe0d1d335f6184bff764ca90f4f2d08eb84471fb5f3030778d0067"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_WKT2_2018</span></span></span><a class="headerlink" href="#c.PJ_WKT_TYPE.PJ_WKT2_2018" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Deprecated alias for PJ_WKT2_2019 </p>
+</dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_WKT_TYPE.PJ_WKT2_2019_SIMPLIFIED">
+<span class="target" id="group__iso19111__types_1ggaa2c2de23d90fe0d1d335f6184bff764caa4990cbbc9ceb6091db4997cab818bc3"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_WKT2_2019_SIMPLIFIED</span></span></span><a class="headerlink" href="#c.PJ_WKT_TYPE.PJ_WKT2_2019_SIMPLIFIED" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>cf <a class="reference internal" href="cpp/io.html#classosgeo_1_1proj_1_1io_1_1WKTFormatter_1ae94f4401c1eeae3808dce1aaa8d25f42a1a237b13d56f5b895c4e3abf9749783e"><span class="std std-ref">osgeo::proj::io::WKTFormatter::Convention::WKT2_2019_SIMPLIFIED</span></a> </p>
+</dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_WKT_TYPE.PJ_WKT2_2018_SIMPLIFIED">
+<span class="target" id="group__iso19111__types_1ggaa2c2de23d90fe0d1d335f6184bff764ca0834502845e91e50a27e4138c3dc586f"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_WKT2_2018_SIMPLIFIED</span></span></span><a class="headerlink" href="#c.PJ_WKT_TYPE.PJ_WKT2_2018_SIMPLIFIED" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Deprecated alias for PJ_WKT2_2019 </p>
+</dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_WKT_TYPE.PJ_WKT1_GDAL">
+<span class="target" id="group__iso19111__types_1ggaa2c2de23d90fe0d1d335f6184bff764ca954fc3d4f834af1ae44d49fb3250733f"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_WKT1_GDAL</span></span></span><a class="headerlink" href="#c.PJ_WKT_TYPE.PJ_WKT1_GDAL" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>cf <a class="reference internal" href="cpp/io.html#classosgeo_1_1proj_1_1io_1_1WKTFormatter_1ae94f4401c1eeae3808dce1aaa8d25f42a85c43e48faba72b30e6501b41536afe5"><span class="std std-ref">osgeo::proj::io::WKTFormatter::Convention::WKT1_GDAL</span></a> </p>
+</dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_WKT_TYPE.PJ_WKT1_ESRI">
+<span class="target" id="group__iso19111__types_1ggaa2c2de23d90fe0d1d335f6184bff764ca5ae78834150a1efe397ef94456fa26ef"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_WKT1_ESRI</span></span></span><a class="headerlink" href="#c.PJ_WKT_TYPE.PJ_WKT1_ESRI" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>cf <a class="reference internal" href="cpp/io.html#classosgeo_1_1proj_1_1io_1_1WKTFormatter_1ae94f4401c1eeae3808dce1aaa8d25f42a8da08577d1e0b736b2259c71c40f0e38"><span class="std std-ref">osgeo::proj::io::WKTFormatter::Convention::WKT1_ESRI</span></a> </p>
+</dd></dl>
+
+</dd></dl>
+
+<dl class="c enum">
+<dt class="sig sig-object c" id="c.PROJ_CRS_EXTENT_USE">
+<span class="target" id="group__iso19111__types_1ga2223a725c58dab5bf93f20aecc9f03c5"></span><span class="k"><span class="pre">enum</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PROJ_CRS_EXTENT_USE</span></span></span><a class="headerlink" href="#c.PROJ_CRS_EXTENT_USE" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>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. </p>
+<p><em>Values:</em></p>
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PROJ_CRS_EXTENT_USE.PJ_CRS_EXTENT_NONE">
+<span class="target" id="group__iso19111__types_1gga2223a725c58dab5bf93f20aecc9f03c5a14d7cd14f47c08c0a989dd93038d5088"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_CRS_EXTENT_NONE</span></span></span><a class="headerlink" href="#c.PROJ_CRS_EXTENT_USE.PJ_CRS_EXTENT_NONE" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Ignore CRS extent </p>
+</dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PROJ_CRS_EXTENT_USE.PJ_CRS_EXTENT_BOTH">
+<span class="target" id="group__iso19111__types_1gga2223a725c58dab5bf93f20aecc9f03c5aa78f99b22a591c67de63ebc84b8982bd"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_CRS_EXTENT_BOTH</span></span></span><a class="headerlink" href="#c.PROJ_CRS_EXTENT_USE.PJ_CRS_EXTENT_BOTH" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Test coordinate operation extent against both CRS extent. </p>
+</dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PROJ_CRS_EXTENT_USE.PJ_CRS_EXTENT_INTERSECTION">
+<span class="target" id="group__iso19111__types_1gga2223a725c58dab5bf93f20aecc9f03c5af2c505f187abfbba1906d3b337cba632"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_CRS_EXTENT_INTERSECTION</span></span></span><a class="headerlink" href="#c.PROJ_CRS_EXTENT_USE.PJ_CRS_EXTENT_INTERSECTION" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Test coordinate operation extent against the intersection of both CRS extent. </p>
+</dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PROJ_CRS_EXTENT_USE.PJ_CRS_EXTENT_SMALLEST">
+<span class="target" id="group__iso19111__types_1gga2223a725c58dab5bf93f20aecc9f03c5a060f0036b2bb75a37ab8c970527364f3"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_CRS_EXTENT_SMALLEST</span></span></span><a class="headerlink" href="#c.PROJ_CRS_EXTENT_USE.PJ_CRS_EXTENT_SMALLEST" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Test coordinate operation against the smallest of both CRS extent. </p>
+</dd></dl>
+
+</dd></dl>
+
+<dl class="c enum">
+<dt class="sig sig-object c" id="c.PROJ_GRID_AVAILABILITY_USE">
+<span class="target" id="group__iso19111__types_1ga8a63b764c6b5ad06b35f7fdf81bcaa93"></span><span class="k"><span class="pre">enum</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PROJ_GRID_AVAILABILITY_USE</span></span></span><a class="headerlink" href="#c.PROJ_GRID_AVAILABILITY_USE" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Describe how grid availability is used. </p>
+<p><em>Values:</em></p>
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PROJ_GRID_AVAILABILITY_USE.PROJ_GRID_AVAILABILITY_USED_FOR_SORTING">
+<span class="target" id="group__iso19111__types_1gga8a63b764c6b5ad06b35f7fdf81bcaa93a24fc0488dc48c856240bb76a5b25f555"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PROJ_GRID_AVAILABILITY_USED_FOR_SORTING</span></span></span><a class="headerlink" href="#c.PROJ_GRID_AVAILABILITY_USE.PROJ_GRID_AVAILABILITY_USED_FOR_SORTING" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Grid availability is only used for sorting results. Operations where some grids are missing will be sorted last. </p>
+</dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PROJ_GRID_AVAILABILITY_USE.PROJ_GRID_AVAILABILITY_DISCARD_OPERATION_IF_MISSING_GRID">
+<span class="target" id="group__iso19111__types_1gga8a63b764c6b5ad06b35f7fdf81bcaa93ac2f3e7703fab0a5c5fd822936e0d3d28"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PROJ_GRID_AVAILABILITY_DISCARD_OPERATION_IF_MISSING_GRID</span></span></span><a class="headerlink" href="#c.PROJ_GRID_AVAILABILITY_USE.PROJ_GRID_AVAILABILITY_DISCARD_OPERATION_IF_MISSING_GRID" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Completely discard an operation if a required grid is missing. </p>
+</dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PROJ_GRID_AVAILABILITY_USE.PROJ_GRID_AVAILABILITY_IGNORED">
+<span class="target" id="group__iso19111__types_1gga8a63b764c6b5ad06b35f7fdf81bcaa93a3a89888e35d853048dd987cab48e810a"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PROJ_GRID_AVAILABILITY_IGNORED</span></span></span><a class="headerlink" href="#c.PROJ_GRID_AVAILABILITY_USE.PROJ_GRID_AVAILABILITY_IGNORED" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Ignore grid availability at all. Results will be presented as if all grids were available. </p>
+</dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PROJ_GRID_AVAILABILITY_USE.PROJ_GRID_AVAILABILITY_KNOWN_AVAILABLE">
+<span class="target" id="group__iso19111__types_1gga8a63b764c6b5ad06b35f7fdf81bcaa93a43ccf77f63882bf37c176969940385cf"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PROJ_GRID_AVAILABILITY_KNOWN_AVAILABLE</span></span></span><a class="headerlink" href="#c.PROJ_GRID_AVAILABILITY_USE.PROJ_GRID_AVAILABILITY_KNOWN_AVAILABLE" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>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. </p>
+</dd></dl>
+
+</dd></dl>
+
+<dl class="c enum">
+<dt class="sig sig-object c" id="c.PJ_PROJ_STRING_TYPE">
+<span class="target" id="group__iso19111__types_1gadd9b673c590f7f90a4b022c68a2b2b00"></span><span class="k"><span class="pre">enum</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_PROJ_STRING_TYPE</span></span></span><a class="headerlink" href="#c.PJ_PROJ_STRING_TYPE" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>PROJ string version. </p>
+<p><em>Values:</em></p>
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_PROJ_STRING_TYPE.PJ_PROJ_5">
+<span class="target" id="group__iso19111__types_1ggadd9b673c590f7f90a4b022c68a2b2b00af3b0c368241b523426824fe0e97953c9"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_PROJ_5</span></span></span><a class="headerlink" href="#c.PJ_PROJ_STRING_TYPE.PJ_PROJ_5" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>cf <a class="reference internal" href="cpp/io.html#classosgeo_1_1proj_1_1io_1_1PROJStringFormatter_1a797997db6984aa2bad279abb0010ff13a475fc81228e34a4715d2d28f4d7f2851"><span class="std std-ref">osgeo::proj::io::PROJStringFormatter::Convention::PROJ_5</span></a> </p>
+</dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_PROJ_STRING_TYPE.PJ_PROJ_4">
+<span class="target" id="group__iso19111__types_1ggadd9b673c590f7f90a4b022c68a2b2b00a6ab85f34053d7904cef39f9c50639224"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_PROJ_4</span></span></span><a class="headerlink" href="#c.PJ_PROJ_STRING_TYPE.PJ_PROJ_4" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>cf <a class="reference internal" href="cpp/io.html#classosgeo_1_1proj_1_1io_1_1PROJStringFormatter_1a797997db6984aa2bad279abb0010ff13ae3bec874928ae377030a07a550bdc7eb"><span class="std std-ref">osgeo::proj::io::PROJStringFormatter::Convention::PROJ_4</span></a> </p>
+</dd></dl>
+
+</dd></dl>
+
+<dl class="c enum">
+<dt class="sig sig-object c" id="c.PROJ_SPATIAL_CRITERION">
+<span class="target" id="group__iso19111__types_1gadfc8adff35d141ac9c3c27f457f25be1"></span><span class="k"><span class="pre">enum</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PROJ_SPATIAL_CRITERION</span></span></span><a class="headerlink" href="#c.PROJ_SPATIAL_CRITERION" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Spatial criterion to restrict candidate operations. </p>
+<p><em>Values:</em></p>
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PROJ_SPATIAL_CRITERION.PROJ_SPATIAL_CRITERION_STRICT_CONTAINMENT">
+<span class="target" id="group__iso19111__types_1ggadfc8adff35d141ac9c3c27f457f25be1a35e8f3d20b1828dd43a5f586f4f6442d"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PROJ_SPATIAL_CRITERION_STRICT_CONTAINMENT</span></span></span><a class="headerlink" href="#c.PROJ_SPATIAL_CRITERION.PROJ_SPATIAL_CRITERION_STRICT_CONTAINMENT" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>The area of validity of transforms should strictly contain the are of interest. </p>
+</dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PROJ_SPATIAL_CRITERION.PROJ_SPATIAL_CRITERION_PARTIAL_INTERSECTION">
+<span class="target" id="group__iso19111__types_1ggadfc8adff35d141ac9c3c27f457f25be1a6ee5ddba902534048e218bf2da31a608"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PROJ_SPATIAL_CRITERION_PARTIAL_INTERSECTION</span></span></span><a class="headerlink" href="#c.PROJ_SPATIAL_CRITERION.PROJ_SPATIAL_CRITERION_PARTIAL_INTERSECTION" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>The area of validity of transforms should at least intersect the area of interest. </p>
+</dd></dl>
+
+</dd></dl>
+
+<dl class="c enum">
+<dt class="sig sig-object c" id="c.PROJ_INTERMEDIATE_CRS_USE">
+<span class="target" id="group__iso19111__types_1ga7c79b426947391654b6ef2bca4a83835"></span><span class="k"><span class="pre">enum</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PROJ_INTERMEDIATE_CRS_USE</span></span></span><a class="headerlink" href="#c.PROJ_INTERMEDIATE_CRS_USE" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Describe if and how intermediate CRS should be used </p>
+<p><em>Values:</em></p>
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PROJ_INTERMEDIATE_CRS_USE.PROJ_INTERMEDIATE_CRS_USE_ALWAYS">
+<span class="target" id="group__iso19111__types_1gga7c79b426947391654b6ef2bca4a83835a5a27780b3a4b8b931201c473fa5ed288"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PROJ_INTERMEDIATE_CRS_USE_ALWAYS</span></span></span><a class="headerlink" href="#c.PROJ_INTERMEDIATE_CRS_USE.PROJ_INTERMEDIATE_CRS_USE_ALWAYS" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Always search for intermediate CRS. </p>
+</dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PROJ_INTERMEDIATE_CRS_USE.PROJ_INTERMEDIATE_CRS_USE_IF_NO_DIRECT_TRANSFORMATION">
+<span class="target" id="group__iso19111__types_1gga7c79b426947391654b6ef2bca4a83835a453e93c9ebefeedfb03dd0d557e30918"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PROJ_INTERMEDIATE_CRS_USE_IF_NO_DIRECT_TRANSFORMATION</span></span></span><a class="headerlink" href="#c.PROJ_INTERMEDIATE_CRS_USE.PROJ_INTERMEDIATE_CRS_USE_IF_NO_DIRECT_TRANSFORMATION" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Only attempt looking for intermediate CRS if there is no direct transformation available. </p>
+</dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PROJ_INTERMEDIATE_CRS_USE.PROJ_INTERMEDIATE_CRS_USE_NEVER">
+<span class="target" id="group__iso19111__types_1gga7c79b426947391654b6ef2bca4a83835a513ed7f6a2851ebcd8b3f1df953e60e2"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PROJ_INTERMEDIATE_CRS_USE_NEVER</span></span></span><a class="headerlink" href="#c.PROJ_INTERMEDIATE_CRS_USE.PROJ_INTERMEDIATE_CRS_USE_NEVER" title="Permalink to this definition">¶</a><br /></dt>
+<dd></dd></dl>
+
+</dd></dl>
+
+<dl class="c enum">
+<dt class="sig sig-object c" id="c.PJ_COORDINATE_SYSTEM_TYPE">
+<span class="target" id="group__iso19111__types_1ga309b520b438e2c6d150b2e635a4afdf6"></span><span class="k"><span class="pre">enum</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_COORDINATE_SYSTEM_TYPE</span></span></span><a class="headerlink" href="#c.PJ_COORDINATE_SYSTEM_TYPE" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Type of coordinate system. </p>
+<p><em>Values:</em></p>
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_COORDINATE_SYSTEM_TYPE.PJ_CS_TYPE_UNKNOWN">
+<span class="target" id="group__iso19111__types_1gga309b520b438e2c6d150b2e635a4afdf6a20ff5c1e917219fbe2893c4ab2478342"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_CS_TYPE_UNKNOWN</span></span></span><a class="headerlink" href="#c.PJ_COORDINATE_SYSTEM_TYPE.PJ_CS_TYPE_UNKNOWN" title="Permalink to this definition">¶</a><br /></dt>
+<dd></dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_COORDINATE_SYSTEM_TYPE.PJ_CS_TYPE_CARTESIAN">
+<span class="target" id="group__iso19111__types_1gga309b520b438e2c6d150b2e635a4afdf6a3a584b53b036edae81425fe7d5cdb6f6"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_CS_TYPE_CARTESIAN</span></span></span><a class="headerlink" href="#c.PJ_COORDINATE_SYSTEM_TYPE.PJ_CS_TYPE_CARTESIAN" title="Permalink to this definition">¶</a><br /></dt>
+<dd></dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_COORDINATE_SYSTEM_TYPE.PJ_CS_TYPE_ELLIPSOIDAL">
+<span class="target" id="group__iso19111__types_1gga309b520b438e2c6d150b2e635a4afdf6ae78b5d0c7cede5fd42b3395c83bf5470"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_CS_TYPE_ELLIPSOIDAL</span></span></span><a class="headerlink" href="#c.PJ_COORDINATE_SYSTEM_TYPE.PJ_CS_TYPE_ELLIPSOIDAL" title="Permalink to this definition">¶</a><br /></dt>
+<dd></dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_COORDINATE_SYSTEM_TYPE.PJ_CS_TYPE_VERTICAL">
+<span class="target" id="group__iso19111__types_1gga309b520b438e2c6d150b2e635a4afdf6add6c206a0c2c48d38e49d11d12ca8678"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_CS_TYPE_VERTICAL</span></span></span><a class="headerlink" href="#c.PJ_COORDINATE_SYSTEM_TYPE.PJ_CS_TYPE_VERTICAL" title="Permalink to this definition">¶</a><br /></dt>
+<dd></dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_COORDINATE_SYSTEM_TYPE.PJ_CS_TYPE_SPHERICAL">
+<span class="target" id="group__iso19111__types_1gga309b520b438e2c6d150b2e635a4afdf6a63a6bae3d96f5c2f77e83c07a16bfb6b"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_CS_TYPE_SPHERICAL</span></span></span><a class="headerlink" href="#c.PJ_COORDINATE_SYSTEM_TYPE.PJ_CS_TYPE_SPHERICAL" title="Permalink to this definition">¶</a><br /></dt>
+<dd></dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_COORDINATE_SYSTEM_TYPE.PJ_CS_TYPE_ORDINAL">
+<span class="target" id="group__iso19111__types_1gga309b520b438e2c6d150b2e635a4afdf6a8e55abec76fb3ef4f32a5bf7e1b94bc0"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_CS_TYPE_ORDINAL</span></span></span><a class="headerlink" href="#c.PJ_COORDINATE_SYSTEM_TYPE.PJ_CS_TYPE_ORDINAL" title="Permalink to this definition">¶</a><br /></dt>
+<dd></dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_COORDINATE_SYSTEM_TYPE.PJ_CS_TYPE_PARAMETRIC">
+<span class="target" id="group__iso19111__types_1gga309b520b438e2c6d150b2e635a4afdf6ab6cc5f378be9acf1abe04b21e0c5f9d2"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_CS_TYPE_PARAMETRIC</span></span></span><a class="headerlink" href="#c.PJ_COORDINATE_SYSTEM_TYPE.PJ_CS_TYPE_PARAMETRIC" title="Permalink to this definition">¶</a><br /></dt>
+<dd></dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_COORDINATE_SYSTEM_TYPE.PJ_CS_TYPE_DATETIMETEMPORAL">
+<span class="target" id="group__iso19111__types_1gga309b520b438e2c6d150b2e635a4afdf6a3b716aea9bd5db9de0b9d212b9c033e6"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_CS_TYPE_DATETIMETEMPORAL</span></span></span><a class="headerlink" href="#c.PJ_COORDINATE_SYSTEM_TYPE.PJ_CS_TYPE_DATETIMETEMPORAL" title="Permalink to this definition">¶</a><br /></dt>
+<dd></dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_COORDINATE_SYSTEM_TYPE.PJ_CS_TYPE_TEMPORALCOUNT">
+<span class="target" id="group__iso19111__types_1gga309b520b438e2c6d150b2e635a4afdf6af9664776c1436e61bf9e15969bc6b07b"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_CS_TYPE_TEMPORALCOUNT</span></span></span><a class="headerlink" href="#c.PJ_COORDINATE_SYSTEM_TYPE.PJ_CS_TYPE_TEMPORALCOUNT" title="Permalink to this definition">¶</a><br /></dt>
+<dd></dd></dl>
+
+<dl class="c enumerator">
+<dt class="sig sig-object c" id="c.PJ_COORDINATE_SYSTEM_TYPE.PJ_CS_TYPE_TEMPORALMEASURE">
+<span class="target" id="group__iso19111__types_1gga309b520b438e2c6d150b2e635a4afdf6a1887c22fcebf91b54845877b32db712c"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PJ_CS_TYPE_TEMPORALMEASURE</span></span></span><a class="headerlink" href="#c.PJ_COORDINATE_SYSTEM_TYPE.PJ_CS_TYPE_TEMPORALMEASURE" title="Permalink to this definition">¶</a><br /></dt>
+<dd></dd></dl>
+
+</dd></dl>
+
+<dl class="c type">
+<dt class="sig sig-object c" id="c.PROJ_STRING_LIST">
+<span class="target" id="group__iso19111__types_1gab30fdab04c7368a72112f4097177f514"></span><span class="k"><span class="pre">typedef</span></span><span class="w"> </span><span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="p"><span class="pre">*</span></span><span class="sig-name descname"><span class="n"><span class="pre">PROJ_STRING_LIST</span></span></span><a class="headerlink" href="#c.PROJ_STRING_LIST" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Type representing a NULL terminated list of NULL-terminate strings. </p>
+</dd></dl>
+
+<dl class="c struct">
+<dt class="sig sig-object c" id="c.PROJ_CRS_INFO">
+<span class="target" id="structPROJ__CRS__INFO"></span><span class="k"><span class="pre">struct</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PROJ_CRS_INFO</span></span></span><a class="headerlink" href="#c.PROJ_CRS_INFO" title="Permalink to this definition">¶</a><br /></dt>
+<dd><div class="docutils container">
+<em>#include &lt;proj.h&gt;</em></div>
+<p>Structure given overall description of a CRS. </p>
+<p>This structure may grow over time, and should not be directly allocated by client code. </p>
+<div class="breathe-sectiondef docutils container">
+<p class="breathe-sectiondef-title rubric" id="breathe-section-title-public-members">Public Members</p>
+<dl class="c var">
+<dt class="sig sig-object c" id="c.PROJ_CRS_INFO.auth_name">
+<span class="target" id="structPROJ__CRS__INFO_1a2aaf613589d3ae5bdc9e02cace650923"></span><span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="sig-name descname"><span class="n"><span class="pre">auth_name</span></span></span><a class="headerlink" href="#c.PROJ_CRS_INFO.auth_name" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Authority name. </p>
+</dd></dl>
+
+<dl class="c var">
+<dt class="sig sig-object c" id="c.PROJ_CRS_INFO.code">
+<span class="target" id="structPROJ__CRS__INFO_1aa2f861ac8733182dec726999e56ce539"></span><span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="sig-name descname"><span class="n"><span class="pre">code</span></span></span><a class="headerlink" href="#c.PROJ_CRS_INFO.code" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Object code. </p>
+</dd></dl>
+
+<dl class="c var">
+<dt class="sig sig-object c" id="c.PROJ_CRS_INFO.name">
+<span class="target" id="structPROJ__CRS__INFO_1a5482280d4396197234da00d190d0a83e"></span><span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="sig-name descname"><span class="n"><span class="pre">name</span></span></span><a class="headerlink" href="#c.PROJ_CRS_INFO.name" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Object name. </p>
+</dd></dl>
+
+<dl class="c var">
+<dt class="sig sig-object c" id="c.PROJ_CRS_INFO.type">
+<span class="target" id="structPROJ__CRS__INFO_1a28333bf93c4023585bf3a0c55a198449"></span><a class="reference internal" href="#c.PJ_TYPE" title="PJ_TYPE"><span class="n"><span class="pre">PJ_TYPE</span></span></a><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">type</span></span></span><a class="headerlink" href="#c.PROJ_CRS_INFO.type" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Object type. </p>
+</dd></dl>
+
+<dl class="c var">
+<dt class="sig sig-object c" id="c.PROJ_CRS_INFO.deprecated">
+<span class="target" id="structPROJ__CRS__INFO_1a3589d7f75ef15516817f252f6de5c698"></span><span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">deprecated</span></span></span><a class="headerlink" href="#c.PROJ_CRS_INFO.deprecated" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Whether the object is deprecated </p>
+</dd></dl>
+
+<dl class="c var">
+<dt class="sig sig-object c" id="c.PROJ_CRS_INFO.bbox_valid">
+<span class="target" id="structPROJ__CRS__INFO_1a21223a0895e8fa80310feb11c23b3cb4"></span><span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">bbox_valid</span></span></span><a class="headerlink" href="#c.PROJ_CRS_INFO.bbox_valid" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Whereas the west_lon_degree, south_lat_degree, east_lon_degree and north_lat_degree fields are valid. </p>
+</dd></dl>
+
+<dl class="c var">
+<dt class="sig sig-object c" id="c.PROJ_CRS_INFO.west_lon_degree">
+<span class="target" id="structPROJ__CRS__INFO_1a1480aa32b8d72f4816a62c8d1d40c5c8"></span><span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">west_lon_degree</span></span></span><a class="headerlink" href="#c.PROJ_CRS_INFO.west_lon_degree" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Western-most longitude of the area of use, in degrees. </p>
+</dd></dl>
+
+<dl class="c var">
+<dt class="sig sig-object c" id="c.PROJ_CRS_INFO.south_lat_degree">
+<span class="target" id="structPROJ__CRS__INFO_1acc49b4f1606807b8e0d63533cffd585f"></span><span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">south_lat_degree</span></span></span><a class="headerlink" href="#c.PROJ_CRS_INFO.south_lat_degree" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Southern-most latitude of the area of use, in degrees. </p>
+</dd></dl>
+
+<dl class="c var">
+<dt class="sig sig-object c" id="c.PROJ_CRS_INFO.east_lon_degree">
+<span class="target" id="structPROJ__CRS__INFO_1a14e96dd40cd586df5fb70f837f9eaa9e"></span><span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">east_lon_degree</span></span></span><a class="headerlink" href="#c.PROJ_CRS_INFO.east_lon_degree" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Eastern-most longitude of the area of use, in degrees. </p>
+</dd></dl>
+
+<dl class="c var">
+<dt class="sig sig-object c" id="c.PROJ_CRS_INFO.north_lat_degree">
+<span class="target" id="structPROJ__CRS__INFO_1a5436ebab441ec6ff7872c5a52391bba7"></span><span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">north_lat_degree</span></span></span><a class="headerlink" href="#c.PROJ_CRS_INFO.north_lat_degree" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Northern-most latitude of the area of use, in degrees. </p>
+</dd></dl>
+
+<dl class="c var">
+<dt class="sig sig-object c" id="c.PROJ_CRS_INFO.area_name">
+<span class="target" id="structPROJ__CRS__INFO_1a65e41527fc53a004147a1dd0206a77b9"></span><span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="sig-name descname"><span class="n"><span class="pre">area_name</span></span></span><a class="headerlink" href="#c.PROJ_CRS_INFO.area_name" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Name of the area of use. </p>
+</dd></dl>
+
+<dl class="c var">
+<dt class="sig sig-object c" id="c.PROJ_CRS_INFO.projection_method_name">
+<span class="target" id="structPROJ__CRS__INFO_1aaf5dfb9e1767652ab87260c0375a46f9"></span><span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="sig-name descname"><span class="n"><span class="pre">projection_method_name</span></span></span><a class="headerlink" href="#c.PROJ_CRS_INFO.projection_method_name" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Name of the projection method for a projected CRS. Might be NULL even for projected CRS in some cases. </p>
+</dd></dl>
+
+<dl class="c var">
+<dt class="sig sig-object c" id="c.PROJ_CRS_INFO.celestial_body_name">
+<span class="target" id="structPROJ__CRS__INFO_1ac4818807f247f4eb17dad45f4083604d"></span><span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="sig-name descname"><span class="n"><span class="pre">celestial_body_name</span></span></span><a class="headerlink" href="#c.PROJ_CRS_INFO.celestial_body_name" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Name of the celestial body of the CRS (e.g. “Earth”). <dl class="simple">
+<dt><strong>Since</strong></dt><dd><p>8.1 </p>
+</dd>
+</dl>
+</p>
+</dd></dl>
+
+</div>
+</dd></dl>
+
+<dl class="c struct">
+<dt class="sig sig-object c" id="c.PROJ_CRS_LIST_PARAMETERS">
+<span class="target" id="structPROJ__CRS__LIST__PARAMETERS"></span><span class="k"><span class="pre">struct</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PROJ_CRS_LIST_PARAMETERS</span></span></span><a class="headerlink" href="#c.PROJ_CRS_LIST_PARAMETERS" title="Permalink to this definition">¶</a><br /></dt>
+<dd><div class="docutils container">
+<em>#include &lt;proj.h&gt;</em></div>
+<p>Structure describing optional parameters for proj_get_crs_list();. </p>
+<p>This structure may grow over time, and should not be directly allocated by client code. </p>
+<div class="breathe-sectiondef docutils container">
+<p class="breathe-sectiondef-title rubric" id="breathe-section-title-public-members">Public Members</p>
+<dl class="c var">
+<dt class="sig sig-object c" id="c.PROJ_CRS_LIST_PARAMETERS.types">
+<span class="target" id="structPROJ__CRS__LIST__PARAMETERS_1a86a3131e91abadf4a3d5f67f441bb1f1"></span><span class="k"><span class="pre">const</span></span><span class="w"> </span><a class="reference internal" href="#c.PJ_TYPE" title="PJ_TYPE"><span class="n"><span class="pre">PJ_TYPE</span></span></a><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="sig-name descname"><span class="n"><span class="pre">types</span></span></span><a class="headerlink" href="#c.PROJ_CRS_LIST_PARAMETERS.types" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Array of allowed object types. Should be NULL if all types are allowed </p>
+</dd></dl>
+
+<dl class="c var">
+<dt class="sig sig-object c" id="c.PROJ_CRS_LIST_PARAMETERS.typesCount">
+<span class="target" id="structPROJ__CRS__LIST__PARAMETERS_1a17c2a3a95be809e1ab3f92b55c5bc36a"></span><span class="n"><span class="pre">size_t</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">typesCount</span></span></span><a class="headerlink" href="#c.PROJ_CRS_LIST_PARAMETERS.typesCount" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Size of types. Should be 0 if all types are allowed </p>
+</dd></dl>
+
+<dl class="c var">
+<dt class="sig sig-object c" id="c.PROJ_CRS_LIST_PARAMETERS.crs_area_of_use_contains_bbox">
+<span class="target" id="structPROJ__CRS__LIST__PARAMETERS_1a6cb020dd412adf258061dce232abbcd9"></span><span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">crs_area_of_use_contains_bbox</span></span></span><a class="headerlink" href="#c.PROJ_CRS_LIST_PARAMETERS.crs_area_of_use_contains_bbox" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>If TRUE and bbox_valid == TRUE, then only CRS whose area of use entirely contains the specified bounding box will be returned. If FALSE and bbox_valid == TRUE, then only CRS whose area of use intersects the specified bounding box will be returned. </p>
+</dd></dl>
+
+<dl class="c var">
+<dt class="sig sig-object c" id="c.PROJ_CRS_LIST_PARAMETERS.bbox_valid">
+<span class="target" id="structPROJ__CRS__LIST__PARAMETERS_1afc1f01606cda74022df15f5daebc326f"></span><span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">bbox_valid</span></span></span><a class="headerlink" href="#c.PROJ_CRS_LIST_PARAMETERS.bbox_valid" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>To set to TRUE so that west_lon_degree, south_lat_degree, east_lon_degree and north_lat_degree fields are taken into account. </p>
+</dd></dl>
+
+<dl class="c var">
+<dt class="sig sig-object c" id="c.PROJ_CRS_LIST_PARAMETERS.west_lon_degree">
+<span class="target" id="structPROJ__CRS__LIST__PARAMETERS_1a14403e80f21eb233f4c8b6b94cc49b6e"></span><span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">west_lon_degree</span></span></span><a class="headerlink" href="#c.PROJ_CRS_LIST_PARAMETERS.west_lon_degree" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Western-most longitude of the area of use, in degrees. </p>
+</dd></dl>
+
+<dl class="c var">
+<dt class="sig sig-object c" id="c.PROJ_CRS_LIST_PARAMETERS.south_lat_degree">
+<span class="target" id="structPROJ__CRS__LIST__PARAMETERS_1a2b7d92e06313d7bf8f267823bedc3fc8"></span><span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">south_lat_degree</span></span></span><a class="headerlink" href="#c.PROJ_CRS_LIST_PARAMETERS.south_lat_degree" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Southern-most latitude of the area of use, in degrees. </p>
+</dd></dl>
+
+<dl class="c var">
+<dt class="sig sig-object c" id="c.PROJ_CRS_LIST_PARAMETERS.east_lon_degree">
+<span class="target" id="structPROJ__CRS__LIST__PARAMETERS_1a0b655ded94197085360233cf0b7ac1da"></span><span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">east_lon_degree</span></span></span><a class="headerlink" href="#c.PROJ_CRS_LIST_PARAMETERS.east_lon_degree" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Eastern-most longitude of the area of use, in degrees. </p>
+</dd></dl>
+
+<dl class="c var">
+<dt class="sig sig-object c" id="c.PROJ_CRS_LIST_PARAMETERS.north_lat_degree">
+<span class="target" id="structPROJ__CRS__LIST__PARAMETERS_1a9351b046681516bcddb2b0aa425fe17c"></span><span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">north_lat_degree</span></span></span><a class="headerlink" href="#c.PROJ_CRS_LIST_PARAMETERS.north_lat_degree" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Northern-most latitude of the area of use, in degrees. </p>
+</dd></dl>
+
+<dl class="c var">
+<dt class="sig sig-object c" id="c.PROJ_CRS_LIST_PARAMETERS.allow_deprecated">
+<span class="target" id="structPROJ__CRS__LIST__PARAMETERS_1a01aac8e9d525faca50907780d226a2cf"></span><span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">allow_deprecated</span></span></span><a class="headerlink" href="#c.PROJ_CRS_LIST_PARAMETERS.allow_deprecated" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Whether deprecated objects are allowed. Default to FALSE. </p>
+</dd></dl>
+
+<dl class="c var">
+<dt class="sig sig-object c" id="c.PROJ_CRS_LIST_PARAMETERS.celestial_body_name">
+<span class="target" id="structPROJ__CRS__LIST__PARAMETERS_1a421c3840d94cf3b39a988706682cb9ac"></span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="sig-name descname"><span class="n"><span class="pre">celestial_body_name</span></span></span><a class="headerlink" href="#c.PROJ_CRS_LIST_PARAMETERS.celestial_body_name" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Celestial body of the CRS (e.g. “Earth”). The default value, NULL, means no restriction <dl class="simple">
+<dt><strong>Since</strong></dt><dd><p>8.1 </p>
+</dd>
+</dl>
+</p>
+</dd></dl>
+
+</div>
+</dd></dl>
+
+<dl class="c struct">
+<dt class="sig sig-object c" id="c.PROJ_UNIT_INFO">
+<span class="target" id="structPROJ__UNIT__INFO"></span><span class="k"><span class="pre">struct</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PROJ_UNIT_INFO</span></span></span><a class="headerlink" href="#c.PROJ_UNIT_INFO" title="Permalink to this definition">¶</a><br /></dt>
+<dd><div class="docutils container">
+<em>#include &lt;proj.h&gt;</em></div>
+<p>Structure given description of a unit. </p>
+<p>This structure may grow over time, and should not be directly allocated by client code. <dl class="simple">
+<dt><strong>Since</strong></dt><dd><p>7.1 </p>
+</dd>
+</dl>
+</p>
+<div class="breathe-sectiondef docutils container">
+<p class="breathe-sectiondef-title rubric" id="breathe-section-title-public-members">Public Members</p>
+<dl class="c var">
+<dt class="sig sig-object c" id="c.PROJ_UNIT_INFO.auth_name">
+<span class="target" id="structPROJ__UNIT__INFO_1a9200c7c0a7e75d497982e011e4b4c667"></span><span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="sig-name descname"><span class="n"><span class="pre">auth_name</span></span></span><a class="headerlink" href="#c.PROJ_UNIT_INFO.auth_name" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Authority name. </p>
+</dd></dl>
+
+<dl class="c var">
+<dt class="sig sig-object c" id="c.PROJ_UNIT_INFO.code">
+<span class="target" id="structPROJ__UNIT__INFO_1a3ccace573ea3bbc26fb1bfe0a887cd93"></span><span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="sig-name descname"><span class="n"><span class="pre">code</span></span></span><a class="headerlink" href="#c.PROJ_UNIT_INFO.code" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Object code. </p>
+</dd></dl>
+
+<dl class="c var">
+<dt class="sig sig-object c" id="c.PROJ_UNIT_INFO.name">
+<span class="target" id="structPROJ__UNIT__INFO_1a6ad97e9bd39cbd422bce4fb53cc9443d"></span><span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="sig-name descname"><span class="n"><span class="pre">name</span></span></span><a class="headerlink" href="#c.PROJ_UNIT_INFO.name" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Object name. For example “metre”, “US survey foot”, etc. </p>
+</dd></dl>
+
+<dl class="c var">
+<dt class="sig sig-object c" id="c.PROJ_UNIT_INFO.category">
+<span class="target" id="structPROJ__UNIT__INFO_1a4285a4e07ab9b36ae10cd6ad9e733f63"></span><span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="sig-name descname"><span class="n"><span class="pre">category</span></span></span><a class="headerlink" href="#c.PROJ_UNIT_INFO.category" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Category of the unit: one of “linear”, “linear_per_time”, “angular”, “angular_per_time”, “scale”, “scale_per_time” or “time” </p>
+</dd></dl>
+
+<dl class="c var">
+<dt class="sig sig-object c" id="c.PROJ_UNIT_INFO.conv_factor">
+<span class="target" id="structPROJ__UNIT__INFO_1a07cd57479cfe87b85e28c550575e728b"></span><span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">conv_factor</span></span></span><a class="headerlink" href="#c.PROJ_UNIT_INFO.conv_factor" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Conversion factor to apply to transform from that unit to the corresponding SI unit (metre for “linear”, radian for “angular”, etc.). It might be 0 in some cases to indicate no known conversion factor. </p>
+</dd></dl>
+
+<dl class="c var">
+<dt class="sig sig-object c" id="c.PROJ_UNIT_INFO.proj_short_name">
+<span class="target" id="structPROJ__UNIT__INFO_1a643252a772508e184788d34866f8e095"></span><span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="sig-name descname"><span class="n"><span class="pre">proj_short_name</span></span></span><a class="headerlink" href="#c.PROJ_UNIT_INFO.proj_short_name" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>PROJ short name, like “m”, “ft”, “us-ft”, etc… Might be NULL </p>
+</dd></dl>
+
+<dl class="c var">
+<dt class="sig sig-object c" id="c.PROJ_UNIT_INFO.deprecated">
+<span class="target" id="structPROJ__UNIT__INFO_1af706b19665a2a823f8f2e879cc021051"></span><span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">deprecated</span></span></span><a class="headerlink" href="#c.PROJ_UNIT_INFO.deprecated" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Whether the object is deprecated </p>
+</dd></dl>
+
+</div>
+</dd></dl>
+
+<dl class="c struct">
+<dt class="sig sig-object c" id="c.PROJ_CELESTIAL_BODY_INFO">
+<span class="target" id="structPROJ__CELESTIAL__BODY__INFO"></span><span class="k"><span class="pre">struct</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">PROJ_CELESTIAL_BODY_INFO</span></span></span><a class="headerlink" href="#c.PROJ_CELESTIAL_BODY_INFO" title="Permalink to this definition">¶</a><br /></dt>
+<dd><div class="docutils container">
+<em>#include &lt;proj.h&gt;</em></div>
+<p>Structure given description of a celestial body. </p>
+<p>This structure may grow over time, and should not be directly allocated by client code. <dl class="simple">
+<dt><strong>Since</strong></dt><dd><p>8.1 </p>
+</dd>
+</dl>
+</p>
+<div class="breathe-sectiondef docutils container">
+<p class="breathe-sectiondef-title rubric" id="breathe-section-title-public-members">Public Members</p>
+<dl class="c var">
+<dt class="sig sig-object c" id="c.PROJ_CELESTIAL_BODY_INFO.auth_name">
+<span class="target" id="structPROJ__CELESTIAL__BODY__INFO_1aaa1648ff908d86f196ab5bef68e0bb86"></span><span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="sig-name descname"><span class="n"><span class="pre">auth_name</span></span></span><a class="headerlink" href="#c.PROJ_CELESTIAL_BODY_INFO.auth_name" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Authority name. </p>
+</dd></dl>
+
+<dl class="c var">
+<dt class="sig sig-object c" id="c.PROJ_CELESTIAL_BODY_INFO.name">
+<span class="target" id="structPROJ__CELESTIAL__BODY__INFO_1aecefd8d3ed82eafd703098fbfdbeed6e"></span><span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="sig-name descname"><span class="n"><span class="pre">name</span></span></span><a class="headerlink" href="#c.PROJ_CELESTIAL_BODY_INFO.name" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Object name. For example “Earth” </p>
+</dd></dl>
+
+</div>
+</dd></dl>
+
+</section>
+</section>
+
+
+ </div>
+ </div>
+ <footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer">
+ <a href="macros.html" class="btn btn-neutral float-left" title="Macros" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
+ <a href="functions.html" class="btn btn-neutral float-right" title="Functions" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
+ </div>
+
+ <hr/>
+
+ <div role="contentinfo">
+ <p>&#169; Copyright 1983-2022.
+ <span class="lastupdated">Last updated on 22 Mar 2022.
+ </span></p>
+ </div>
+
+ Built with <a href="https://www.sphinx-doc.org/">Sphinx</a> using a
+ <a href="https://github.com/readthedocs/sphinx_rtd_theme">theme</a>
+ provided by <a href="https://readthedocs.org">Read the Docs</a>.
+
+
+</footer>
+ </div>
+ </div>
+ </section>
+ </div>
+ <script>
+ jQuery(function () {
+ SphinxRtdTheme.Navigation.enable(true);
+ });
+ </script>
+
+</body>
+</html> \ No newline at end of file