aboutsummaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorEven Rouault <even.rouault@spatialys.com>2018-11-14 17:40:42 +0100
committerEven Rouault <even.rouault@spatialys.com>2018-11-14 22:48:29 +0100
commitd928db15d53805d9b728b440079756081961c536 (patch)
treee862a961d26bedb34c58e4f28ef0bdeedb5f3225 /docs
parent330e8bf686f9c4524075ca1ff50cbca6c9e091da (diff)
downloadPROJ-d928db15d53805d9b728b440079756081961c536.tar.gz
PROJ-d928db15d53805d9b728b440079756081961c536.zip
Implement RFC 2: Initial integration of "GDAL SRS barn" work
This work mostly consists of: - a C++ implementation of the ISO-19111:2018 / OGC Topic 2 "Referencing by coordinates" classes to represent Datums, Coordinate systems, CRSs (Coordinate Reference Systems) and Coordinate Operations. - methods to convert between this C++ modeling and WKT1, WKT2 and PROJ string representations of those objects - management and query of a SQLite3 database of CRS and Coordinate Operation definition - a C API binding part of those capabilities This is all-in-one squashed commit of the work of https://github.com/OSGeo/proj.4/pull/1040
Diffstat (limited to 'docs')
-rw-r--r--docs/Makefile12
-rw-r--r--docs/source/conf.py5
-rw-r--r--docs/source/development/reference/cpp/common.rst8
-rw-r--r--docs/source/development/reference/cpp/cpp_general.rst7
-rw-r--r--docs/source/development/reference/cpp/crs.rst8
-rw-r--r--docs/source/development/reference/cpp/cs.rst8
-rw-r--r--docs/source/development/reference/cpp/datum.rst8
-rw-r--r--docs/source/development/reference/cpp/index.rst19
-rw-r--r--docs/source/development/reference/cpp/io.rst8
-rw-r--r--docs/source/development/reference/cpp/metadata.rst8
-rw-r--r--docs/source/development/reference/cpp/operation.rst8
-rw-r--r--docs/source/development/reference/cpp/util.rst8
-rw-r--r--docs/source/development/reference/functions.rst5
-rw-r--r--docs/source/development/reference/index.rst1
-rw-r--r--docs/source/index.rst2
15 files changed, 113 insertions, 2 deletions
diff --git a/docs/Makefile b/docs/Makefile
index 2540fdff..e6a02fdd 100644
--- a/docs/Makefile
+++ b/docs/Makefile
@@ -51,9 +51,19 @@ help:
clean:
rm -rf $(BUILDDIR)/*
+.doxygen_up_to_date: ../Doxyfile ../src/*.cpp ../include/proj/*.hpp
+ ../scripts/doxygen.sh
+ touch .doxygen_up_to_date
+
.PHONY: html
-html:
+html: .doxygen_up_to_date
$(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html
+ # Undoes the hack done in scripts/doxygen.sh
+ @sed "s/io::Convention_/io::Convention/g" < $(BUILDDIR)/html/development/reference/cpp/io.html | sed "s/>Convention_/>Convention/g" | sed "s/_WKT2/WKT2/g" | sed "s/_WKT1/WKT1/g" > $(BUILDDIR)/html/development/reference/cpp/io.html.tmp
+ @mv $(BUILDDIR)/html/development/reference/cpp/io.html.tmp $(BUILDDIR)/html/development/reference/cpp/io.html
+ # Undoes the hacks of scripts/generate_breathe_friendly_general_doc.py
+ @sed "s/<em class=\"property\">namespace <\/em>//g" < $(BUILDDIR)/html/development/reference/cpp/cpp_general.html > $(BUILDDIR)/html/development/reference/cpp/cpp_general.html.tmp
+ @mv $(BUILDDIR)/html/development/reference/cpp/cpp_general.html.tmp $(BUILDDIR)/html/development/reference/cpp/cpp_general.html
@echo
@echo "Build finished. The HTML pages are in $(BUILDDIR)/html."
diff --git a/docs/source/conf.py b/docs/source/conf.py
index 434e4d73..612c7c7e 100644
--- a/docs/source/conf.py
+++ b/docs/source/conf.py
@@ -34,6 +34,7 @@ import bibstyle
extensions = [
'sphinx.ext.mathjax',
'sphinxcontrib.bibtex',
+ 'breathe',
]
# Add any paths that contain templates here, relative to this directory.
@@ -346,3 +347,7 @@ texinfo_documents = [
# If true, do not generate a @detailmenu in the "Top" node's menu.
#texinfo_no_detailmenu = False
+
+breathe_projects = {
+ "cpp_stuff":"../build/xml/",
+}
diff --git a/docs/source/development/reference/cpp/common.rst b/docs/source/development/reference/cpp/common.rst
new file mode 100644
index 00000000..c1a28d37
--- /dev/null
+++ b/docs/source/development/reference/cpp/common.rst
@@ -0,0 +1,8 @@
+.. _common:
+
+common namespace
+----------------
+
+.. doxygennamespace:: osgeo::proj::common
+ :project: cpp_stuff
+ :members:
diff --git a/docs/source/development/reference/cpp/cpp_general.rst b/docs/source/development/reference/cpp/cpp_general.rst
new file mode 100644
index 00000000..3b47d01e
--- /dev/null
+++ b/docs/source/development/reference/cpp/cpp_general.rst
@@ -0,0 +1,7 @@
+.. _cpp_general:
+
+General documentation
+---------------------
+
+.. doxygenfile:: general_doc.dox.reworked.h
+ :project: cpp_stuff
diff --git a/docs/source/development/reference/cpp/crs.rst b/docs/source/development/reference/cpp/crs.rst
new file mode 100644
index 00000000..2abea378
--- /dev/null
+++ b/docs/source/development/reference/cpp/crs.rst
@@ -0,0 +1,8 @@
+.. _crs:
+
+crs namespace
+-------------
+
+.. doxygennamespace:: osgeo::proj::crs
+ :project: cpp_stuff
+ :members:
diff --git a/docs/source/development/reference/cpp/cs.rst b/docs/source/development/reference/cpp/cs.rst
new file mode 100644
index 00000000..b168213f
--- /dev/null
+++ b/docs/source/development/reference/cpp/cs.rst
@@ -0,0 +1,8 @@
+.. _cs:
+
+cs namespace
+------------
+
+.. doxygennamespace:: osgeo::proj::cs
+ :project: cpp_stuff
+ :members:
diff --git a/docs/source/development/reference/cpp/datum.rst b/docs/source/development/reference/cpp/datum.rst
new file mode 100644
index 00000000..1fee5f8a
--- /dev/null
+++ b/docs/source/development/reference/cpp/datum.rst
@@ -0,0 +1,8 @@
+.. _datum:
+
+datum namespace
+---------------
+
+.. doxygennamespace:: osgeo::proj::datum
+ :project: cpp_stuff
+ :members:
diff --git a/docs/source/development/reference/cpp/index.rst b/docs/source/development/reference/cpp/index.rst
new file mode 100644
index 00000000..bedfbe52
--- /dev/null
+++ b/docs/source/development/reference/cpp/index.rst
@@ -0,0 +1,19 @@
+.. _cpp:
+
+================================================================================
+C++ API
+================================================================================
+
+.. toctree::
+ :maxdepth: 1
+
+ cpp_general
+ common
+ util
+ metadata
+ cs
+ datum
+ crs
+ operation
+ io
+
diff --git a/docs/source/development/reference/cpp/io.rst b/docs/source/development/reference/cpp/io.rst
new file mode 100644
index 00000000..9da0f680
--- /dev/null
+++ b/docs/source/development/reference/cpp/io.rst
@@ -0,0 +1,8 @@
+.. _io:
+
+io namespace
+------------
+
+.. doxygennamespace:: osgeo::proj::io
+ :project: cpp_stuff
+ :members:
diff --git a/docs/source/development/reference/cpp/metadata.rst b/docs/source/development/reference/cpp/metadata.rst
new file mode 100644
index 00000000..b3960122
--- /dev/null
+++ b/docs/source/development/reference/cpp/metadata.rst
@@ -0,0 +1,8 @@
+.. _metadata:
+
+metadata namespace
+------------------
+
+.. doxygennamespace:: osgeo::proj::metadata
+ :project: cpp_stuff
+ :members:
diff --git a/docs/source/development/reference/cpp/operation.rst b/docs/source/development/reference/cpp/operation.rst
new file mode 100644
index 00000000..bc3f201d
--- /dev/null
+++ b/docs/source/development/reference/cpp/operation.rst
@@ -0,0 +1,8 @@
+.. _operation:
+
+operation namespace
+-------------------
+
+.. doxygennamespace:: osgeo::proj::operation
+ :project: cpp_stuff
+ :members:
diff --git a/docs/source/development/reference/cpp/util.rst b/docs/source/development/reference/cpp/util.rst
new file mode 100644
index 00000000..1aba2954
--- /dev/null
+++ b/docs/source/development/reference/cpp/util.rst
@@ -0,0 +1,8 @@
+.. _util:
+
+util namespace
+--------------
+
+.. doxygennamespace:: osgeo::proj::util
+ :project: cpp_stuff
+ :members:
diff --git a/docs/source/development/reference/functions.rst b/docs/source/development/reference/functions.rst
index fb29fd6c..5d27999f 100644
--- a/docs/source/development/reference/functions.rst
+++ b/docs/source/development/reference/functions.rst
@@ -571,3 +571,8 @@ Various
:type `direction`: PJ_DIRECTION
:returns: :c:type:`int` 1 if angular output is returned, otherwise 0
+C API for ISO-19111 functionality
++++++++++++++++++++++++++++++++++
+
+.. doxygenfile:: proj.h
+ :project: cpp_stuff
diff --git a/docs/source/development/reference/index.rst b/docs/source/development/reference/index.rst
index 9e92384c..1d39b1d0 100644
--- a/docs/source/development/reference/index.rst
+++ b/docs/source/development/reference/index.rst
@@ -9,4 +9,5 @@ Reference
datatypes
functions
+ cpp/index.rst
deprecated
diff --git a/docs/source/index.rst b/docs/source/index.rst
index c367cafb..33fd096d 100644
--- a/docs/source/index.rst
+++ b/docs/source/index.rst
@@ -4,7 +4,7 @@ PROJ
###############################################################################
.. toctree::
- :maxdepth: 3
+ :maxdepth: 4
:hidden:
about