73 #include "egm2008_geoid_grid.h"
84 friend class GeoidLibraryCleaner;
99 static void removeInstance();
119 void convertEllipsoidToEGM96FifteenMinBilinearGeoidHeight(
122 double ellipsoidHeight,
123 double *geoidHeight );
140 void convertEllipsoidToEGM96VariableNaturalSplineHeight(
143 double ellipsoidHeight,
144 double *geoidHeight );
160 void convertEllipsoidToEGM84TenDegBilinearHeight(
163 double ellipsoidHeight,
164 double *geoidHeight );
180 void convertEllipsoidToEGM84TenDegNaturalSplineHeight(
183 double ellipsoidHeight,
184 double *geoidHeight );
199 void convertEllipsoidToEGM84ThirtyMinBiLinearHeight(
202 double ellipsoidHeight,
203 double *geoidHeight );
218 convertEllipsoidHeightToEGM2008GeoidHeight(
221 double ellipsoidHeight,
222 double *geoidHeight );
238 void convertEGM96FifteenMinBilinearGeoidToEllipsoidHeight(
242 double *ellipsoidHeight );
258 void convertEGM96VariableNaturalSplineToEllipsoidHeight(
262 double *ellipsoidHeight );
279 void convertEGM84TenDegBilinearToEllipsoidHeight(
283 double *ellipsoidHeight );
299 void convertEGM84TenDegNaturalSplineToEllipsoidHeight(
303 double *ellipsoidHeight );
318 void convertEGM84ThirtyMinBiLinearToEllipsoidHeight(
322 double *ellipsoidHeight );
336 void convertEGM2008GeoidHeightToEllipsoidHeight(
340 double *ellipsoidHeight );
366 static int instanceCount;
369 float *egm96GeoidList;
372 float *egm84GeoidList;
375 double *egm84ThirtyMinGeoidList;
407 void initializeEGM96Geoid();
420 void initializeEGM84Geoid();
433 void initializeEGM84ThirtyMinGeoid();
454 void initializeEGM2008Geoid();
473 void bilinearInterpolateDoubleHeights(
479 double *height_buffer,
480 double *delta_height );
498 void bilinearInterpolate(
504 float *height_buffer,
505 double *delta_height );
524 void naturalSplineInterpolate(
531 float *height_buffer,
532 double *delta_height );
538 static void deleteInstance();