aboutsummaryrefslogtreecommitdiff
path: root/src/projects.h
diff options
context:
space:
mode:
authorThomas Knudsen <busstoptaktik@users.noreply.github.com>2018-01-03 21:06:58 +0100
committerGitHub <noreply@github.com>2018-01-03 21:06:58 +0100
commita3a67fb366e4628e5bda9e30b93b73648665e4d3 (patch)
tree30d49dbe319a16c5ba058ff886512116238b4c0e /src/projects.h
parent403f930355926aced5caba5bfbcc230ad152cf86 (diff)
downloadPROJ-a3a67fb366e4628e5bda9e30b93b73648665e4d3.tar.gz
PROJ-a3a67fb366e4628e5bda9e30b93b73648665e4d3.zip
Introduce preparation/finalization steps in fwd/inv subsystem, supporting arbitrary dimensionality in test code
* Call trans func of same dimensionality as input in gie * Refactor prep/fin code for pj_fwd/pj_inv 2D,3D,4D * Remove prime meridian handling from pj_transform (now handled in pj_fwd_prepare/pj_inv_finalize) * Introduce prep/fin skips, mostly in support of axisswap and pipeline drivers * Refactor fwd/inv subsystem * pj_transform: Let pj_fwd/inv handle scaling * Let pj_fwd/inv3d fall back to 2D eventually
Diffstat (limited to 'src/projects.h')
-rw-r--r--src/projects.h9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/projects.h b/src/projects.h
index 63ea44da..209d6f39 100644
--- a/src/projects.h
+++ b/src/projects.h
@@ -337,7 +337,12 @@ struct PJconsts {
int geoc; /* Geocentric latitude flag */
int is_latlong; /* proj=latlong ... not really a projection at all */
int is_geocent; /* proj=geocent ... not really a projection at all */
+ int is_pipeline; /* 1 if PJ represents a pipeline */
int need_ellps; /* 0 for operations that are purely cartesian */
+ int skip_fwd_prepare;
+ int skip_fwd_finalize;
+ int skip_inv_prepare;
+ int skip_inv_finalize;
enum pj_io_units left; /* Flags for input/output coordinate types */
enum pj_io_units right;
@@ -349,7 +354,7 @@ struct PJconsts {
**************************************************************************************/
- double lam0, phi0; /* central longitude, latitude */
+ double lam0, phi0; /* central meridian, parallel */
double x0, y0, z0, t0; /* false easting and northing (and height and time) */
@@ -590,7 +595,7 @@ extern struct PJ_PRIME_MERIDIANS pj_prime_meridians[];
#ifdef PJ_LIB__
-#define PROJ_HEAD(id, name) static const char des_##id [] = name
+#define PROJ_HEAD(name, desc) static const char des_##name [] = desc
#define OPERATION(name, NEED_ELLPS) \
\