[Proj] PROJ 5.0.0RC2
sebastic at xs4all.nl
Fri Feb 9 05:58:25 EST 2018
On 02/09/2018 11:35 AM, Kristian Evers wrote:
> In principle we shouldn’t do API changes now, but on the other hand this is the first time the code is properly tested against other libraries so some adjustments can be necessary.
> First off, the new API has the following functions:
> const PJ_OPERATIONS *proj_list_operations(void);
> const PJ_ELLPS *proj_list_ellps(void);
> const PJ_UNITS *proj_list_units(void);
> const PJ_PRIME_MERIDIANS *proj_list_prime_meridians(void);
> Which does the same thing as the pj_get_*_ref() functions you mention. Except that there is no function for getting the list of datums. The reason being that the +datum parameter is “classic” PROJ functionality which will be phased out eventually (we are moving away from the WGS84 hub datum which +datum is based on).
> So the simple answer is to use the new API. Unfortunately you will have the same problem since we also have a UV typedef in the new API. So at least I think we should change that in order to not clash with other libraries. Unless there is any objections to this, I will rename the types XY, LP, UV, XXYZ, LPZ, UVZ to PJ_XY, PJ_LP, PJ_UV, PJ_XYZ, PJ_LPZ, PJ_UVZ.
> Another solution to the problem would be to move the mentioned functions to proj_api.h. I am reluctant to do that. I want an incentive to move to the new API so the transition happens as fast as possible.
> How does that work for you?
Prefixing the typedefs with 'PJ_' sounds good.
I've forwarded your reply to the perl5-Geo-Proj4 issue and will proxy
back any reply from the developer.
More information about the Proj