aboutsummaryrefslogtreecommitdiff
path: root/src/proj_api.h
AgeCommit message (Collapse)Author
2018-09-18Only allow usage of proj_api.h if explicit consent was givenKristian Evers
We want to flag that proj_api_h is now deprecated. With this commit it is now mandatory to #define ACCEPT_USE_OF_DEPRECATED_PROJ_API_H before proj_api.h can be included. proj_api.h is used internally a bunch of places. Therefore ACCEPT_USE_OF_DEPRECATED_PROJ_API_H has been defined in projects.h and a few other necessary files to ensure that PROJ compiles. Closes #836
2018-09-15Bump version numbers after 5.2.0 releaseKristian Evers
2018-06-08bump version numbers to 5.2.0Kristian Evers
2018-05-24Update version numbers for 5.1.0 releaseKristian Evers
2018-05-15IWYU: Partial PJ_natearth.c..rtodms.cKurt Schwehr
2018-02-11Make sure that #define's work properly when including proj_api.h and proj.h ↵Kristian Evers
together.
2018-01-31Add pj_has_inverse().Kristian Evers
With the introduction of the "inverted" flag on PJ objects you can no longer rely on checking that the inv, inv3d and inv4d functions are available on said PJ object. The function is used internally a few places and otherwise exposed in proj_api.h to ensure that users of the old programming interface can safely check if an operation has an inverse.
2017-11-29Fix bad typedef that surfaces when including proj.h and proj_api.h in the ↵Kristian Evers
same file (#687) Fix bad typedef that surfaces when including proj.h and proj_api.h in the same file
2017-11-28Merge remote-tracking branch 'aaronpuchert/static-assert'Even Rouault
2017-11-28Enable selective debug printout through negative PROJ_DEBUG values (#689)Thomas Knudsen
* Enable selective debug printout through negative PROJ_DEBUG values
2017-11-27Replace some asserts by compile-time assertionsAaron Puchert
Decisions regarding the size of certain types are always made at compile time, hence this is where the assertion should take place. If the assertions fail, there is now a compiler error.
2017-11-20Increment version number before next releaseKristian Evers
2017-11-13Removed remaining traces of the built in selftest system (#661)Thomas Knudsen
* Removed remaining traces of the builtin selftest system. Moved all functionality to test/gie * Updated Appveyor and Travis build scripts * Another appveyor script update
2017-10-19Prevent crashes and leaks on allocation failure (#606)Aaron Puchert
* Prevent crashes and leaks on allocation failure Memory allocation can fail. We need to gracefully handle this case and prevent dereferencing null pointers. * Make NULL checks consistent within a file * Properly report allocation errors * Improve cleanup in pj_gc_reader.c * Implement pj_strdup and use instead of strdup The function strdup is not part of ANSI C 89, but a POSIX extension. Therefore we can not rely on it being available on all platforms.
2017-03-16Add pj_find_file() function to retrieve the full filename of a proj resource ↵Even Rouault
file. Will help GDAL finding where +nadgrids=... or +geoidgrids=... resouces are located to be able to directly open them.
2017-02-26Fix warnings related to -Wshadow -Wnull-dereference -Wfloat-conversionr ↵Even Rouault
-Wmissing-prototypes -Wmissing-declarations
2016-11-20Plumbing for pipelines (#453)Thomas Knudsen
* re-enter pipeline The pipeline interface is now internally based on the pj_obs_api, which simplifies the implementation significantly. This is the first mock up - it compiles fine, but is currently untested * pipeline code cleaned up The pipeline code is now based on the PJ_OBS api (although you can still invoke a pipeline through pj_fwd/pj_inv and their 3D brethren). This has made it possible to eliminate scores of funky casts and convoluted workarounds. The code is now way more straightforward and mostly conforming with common C idioms.. Also, the proj.h / obs_api interface to the logging system has been streamlined through the introduction of the pj_log_error, pj_log_debug, and pj_log_trace functions. * Geodesics + minor changes First proj.h style interface to Charles Karney's geodesics code: pj_lp_dist. Also, renamed pj_apply -> pj_trans * Extended Ellipsoidal Parameters Second eccentricity, second and third flattening etc. * Rename pj_debug_set -> pj_log_level ... and add self test code for PJ_pipeline * Clean up missing pj_apply->pj_trans * Clean up missing pj_obs_dist_2d rename * pj_strerrno bug fixed. Some doc/comments added (In response to a review by @kbevers)
2016-11-12Pipeline plus api - in continuation of the Genereic Coordinates pull request ↵Thomas Knudsen
(#445) This commit reflects continued work on the new rationalized API with geodetic extensions (see rationale in proj.h). It also reflects the parallel work on the transformation pipeline reimplementation, by introducing the PJ_cart cartesian/ellipsoidal converter. See example/pj_obs_api_test.c for demo example code
2016-04-05Some initial work on internal regression testsThomas Knudsen
Need these to reduce the chance I'm screwing up something during this rather intrusive code surgery
2016-04-01First steps toward simplified macros/internalsThomas Knudsen
The brief version:: In an attempt to make proj.4 code slightly more secure and much easier to read and maintain, I'm trying to eliminate a few unfortunate design decisions from the early days of proj.4 The work will be *very* intrusive, especially in the PJ_xxx segment of the code tree, but great care has been taken to design a process that can be implemented stepwise and localized, one projection at a time, then finalized with a relatively small and concentrated work package. The (very) long version: See the comments in PJ_minimal.c
2016-03-06Document a (the?) convention for PJ_VERSION for versions 4.10 and up.Charles Karney
2016-02-15Upgrade geodesic library from GeographicLib 1.46.Charles Karney
* upgrade geodesic.[ch3] * add test suite geodtest.c and invoke via cmake's add_test * increment version to 4.9.3 and library version to 11.0.0
2015-10-27Merge branch 'master' of https://github.com/piyushrpt/proj.4Even Rouault
Conflicts: nad/tv_out.dist
2015-10-23- API Extension to include fwd3d / inv3dPiyush Agram
- New SCH coordinate system for radar imaging systems
2015-10-01Take 2 of the fix to dmstor.Charles Karney
I'm making this pull request soon after the release of 4.9.2. It will cause the results that people get out of proj.4 to change very slightly. If there are problems, we'll get a chance to iron them out well before the next release. The important change is to use DEG_TO_RAD for degree to radian conversions in dmstor.c instead of the slightly inaccurate number used earlier. This necessitates a change to geod_interface.c (which previously had to work aroung the previous bad behavior). PJ_aeqd.c now does conversions in a compatible manner. In src/proj_api.h, DEG_TO_RAD and RAD_TO_DEG are both given to 17 significant figures (this is just a cosmetic change). I've "fixed" the testvarious tests so that they still pass (on my system at least). Everyone should be suitably skeptical of my fixes. (1) Minor changes to "Test bug 244" and only ask for nanometer (instead of picometer) accuracy on positions. (2) 2 lon_wrap tests now return 0dE instead of 360dE (now it's tight?) (3) The results for the forward healpix projection of (-180, +90) and (-180, -90) are now different. I have put the new values into tv_out.dist. I'm fairly confident that the new values are OK, since this projection has various cuts which meet at the poles. It would be good if someone who knows about this projection can verify this.
2015-09-08Increment version to 4.9.2 in preparation for releaseHoward Butler
2015-07-07Make pj_init() locale safe and no longer modify locale (#226)Even Rouault
Remove setlocale() use in pj_init_ctx(), and replace uses of atof() & strtod() by their locale safe variants pj_atof() and pj_strtod(). Proj versions from now advertize #define PJ_LOCALE_SAFE 1 in proj_api.h and export pj_atof() & pj_strtod()
2015-05-31Remove unused $Id$ keywords.Elliott Sales de Andrade
2015-02-174.9.1 release preparation -- update version and NEWSHoward Butler
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2610 4e78687f-474d-0410-85f9-8d5e500ac6b2
2013-06-26fix const correctness of pj_open_lib argsFrank Warmerdam
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2372 4e78687f-474d-0410-85f9-8d5e500ac6b2
2013-06-25move pj_open_lib() to public include fileFrank Warmerdam
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2356 4e78687f-474d-0410-85f9-8d5e500ac6b2
2013-06-24add missing set/get fileapi on context functionsFrank Warmerdam
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2354 4e78687f-474d-0410-85f9-8d5e500ac6b2
2013-06-22prepare for 4.9.0 beta releaseFrank Warmerdam
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2350 4e78687f-474d-0410-85f9-8d5e500ac6b2
2013-06-22preliminary step implementing virtual fileioFrank Warmerdam
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2344 4e78687f-474d-0410-85f9-8d5e500ac6b2
2012-02-15added pj_get_spheroid_defn() (#142)Frank Warmerdam
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@2160 4e78687f-474d-0410-85f9-8d5e500ac6b2
2010-10-19migrate pj_clear_initcache() to public api, and set pj_version to 4.8.0Frank Warmerdam
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1925 4e78687f-474d-0410-85f9-8d5e500ac6b2
2010-06-11preliminary implementation of projCtx APIFrank Warmerdam
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1854 4e78687f-474d-0410-85f9-8d5e500ac6b2
2009-09-24prepare for 4.7.0 releaseFrank Warmerdam
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1631 4e78687f-474d-0410-85f9-8d5e500ac6b2
2009-09-23fix up lock support on windows, enable by default, make public apiFrank Warmerdam
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1625 4e78687f-474d-0410-85f9-8d5e500ac6b2
2009-01-06removed CVS log messages since they are not maintained by subversionFrank Warmerdam
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1504 4e78687f-474d-0410-85f9-8d5e500ac6b2
2008-07-21prepare 4.6.1 releaseFrank Warmerdam
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1455 4e78687f-474d-0410-85f9-8d5e500ac6b2
2007-11-29prepare for 4.6.0 releaseFrank Warmerdam
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1409 4e78687f-474d-0410-85f9-8d5e500ac6b2
2007-08-20avoid warnings in c++ for some prototypesFrank Warmerdam
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1401 4e78687f-474d-0410-85f9-8d5e500ac6b2
2006-04-20updated versionFrank Warmerdam
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1331 4e78687f-474d-0410-85f9-8d5e500ac6b2
2004-10-30Updated release version.Frank Warmerdam
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1260 4e78687f-474d-0410-85f9-8d5e500ac6b2
2004-09-16* src/pj_open_lib.c: added pj_set_searchpath() provided by Eric Miller.Frank Warmerdam
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1227 4e78687f-474d-0410-85f9-8d5e500ac6b2
2004-07-28Changed ra to es in declarations for pj_geocentric_to_geodetic()Frank Warmerdam
and pj_geodetic_to_geocentric() as suggested by Britton Kerin. git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1217 4e78687f-474d-0410-85f9-8d5e500ac6b2
2004-05-04Updated version.Frank Warmerdam
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1191 4e78687f-474d-0410-85f9-8d5e500ac6b2
2004-04-15added pj_get_releaseFrank Warmerdam
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1176 4e78687f-474d-0410-85f9-8d5e500ac6b2
2003-03-31updated to 4.4.7Frank Warmerdam
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1129 4e78687f-474d-0410-85f9-8d5e500ac6b2