Line | Count | Source |
1 | | /* Projection System: default list of projections |
2 | | */ |
3 | | |
4 | | #define DO_NOT_DEFINE_PROJ_HEAD |
5 | | |
6 | | #include "proj.h" |
7 | | #include "proj_internal.h" |
8 | | |
9 | | /* Generate prototypes for projection functions */ |
10 | | #define PROJ_HEAD(id, name) \ |
11 | | extern "C" struct PJconsts *pj_##id(struct PJconsts *); |
12 | | #include "pj_list.h" |
13 | | #undef PROJ_HEAD |
14 | | |
15 | | /* Generate extern declarations for description strings */ |
16 | | #define PROJ_HEAD(id, name) extern "C" const char *const pj_s_##id; |
17 | | #include "pj_list.h" |
18 | | #undef PROJ_HEAD |
19 | | |
20 | | /* Generate the null-terminated list of projection functions with associated |
21 | | * mnemonics and descriptions */ |
22 | | #define PROJ_HEAD(id, name) {#id, pj_##id, &pj_s_##id}, |
23 | | const struct PJ_LIST pj_list[] = { |
24 | | #include "pj_list.h" |
25 | | {nullptr, nullptr, nullptr}, |
26 | | }; |
27 | | #undef PROJ_HEAD |
28 | | |
29 | 151k | const PJ_OPERATIONS *proj_list_operations(void) { return pj_list; } |