00001 /** 00002 \file test_geodesy.h 00003 \brief unit tests for geodesy.c/.h 00004 \author Glenn D. MacGougan (GDM) 00005 \date 2007-11-26 00006 \since 2007-11-26 00007 00008 2007-11-26, GDM, Creation \n 00009 00010 \b "LICENSE INFORMATION" \n 00011 Copyright (c) 2007, refer to 'author' doxygen tags \n 00012 All rights reserved. \n 00013 00014 Redistribution and use in source and binary forms, with or without 00015 modification, are permitted provided the following conditions are met: \n 00016 00017 - Redistributions of source code must retain the above copyright 00018 notice, this list of conditions and the following disclaimer. \n 00019 - Redistributions in binary form must reproduce the above copyright 00020 notice, this list of conditions and the following disclaimer in the 00021 documentation and/or other materials provided with the distribution. \n 00022 - The name(s) of the contributor(s) may not be used to endorse or promote 00023 products derived from this software without specific prior written 00024 permission. \n 00025 00026 THIS SOFTWARE IS PROVIDED BY THE CONTRIBUTORS ``AS IS'' AND ANY EXPRESS 00027 OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 00028 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 00029 DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 00030 INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 00031 (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 00032 SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 00033 CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 00034 LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 00035 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 00036 SUCH DAMAGE. 00037 */ 00038 #ifndef _C_TEST_GEODESY_H_ 00039 #define _C_TEST_GEODESY_H_ 00040 00041 #ifdef __cplusplus 00042 extern "C" { 00043 #endif 00044 00045 00046 /** 00047 \brief The suite initialization function. 00048 \return Returns zero on success, non-zero otherwise. 00049 */ 00050 int init_suite_GEODESY(void); 00051 00052 /** 00053 \brief The suite cleanup function. 00054 \return Returns zero on success, non-zero otherwise. 00055 */ 00056 int clean_suite_GEODESY(void); 00057 00058 00059 /** \brief Test GEODESY_GetReferenceEllipseParameters(). */ 00060 void test_GEODESY_GetReferenceEllipseParameters(void); 00061 00062 /** \brief Test GEODESY coordinate conversions. */ 00063 void test_GEODESY_ConvertCoordinates(void); 00064 00065 /** \brief Test GEODESY_ComputeNorthingEastingVertical(). */ 00066 void test_GEODESY_ComputeNorthingEastingVertical(void); 00067 00068 /** \brief Test GEODESY_ComputePositionDifference(). */ 00069 void test_GEODESY_ComputePositionDifference(void); 00070 00071 /** \brief Test GEODESY_ComputeMeridianRadiusOfCurvature(). */ 00072 void test_GEODESY_ComputeMeridianRadiusOfCurvature(void); 00073 00074 /** \brief Test GEODESY_ComputePrimeVerticalRadiusOfCurvature(). */ 00075 void test_GEODESY_ComputePrimeVerticalRadiusOfCurvature(void); 00076 00077 /** \brief Test GEODESY_ComputeMeridianArcBetweenTwoLatitudes(). */ 00078 void test_GEODESY_ComputeMeridianArcBetweenTwoLatitudes(void); 00079 00080 /** \brief Test GEODESY_ComputeParallelArcBetweenTwoLongitudes(). */ 00081 void test_GEODESY_ComputeParallelArcBetweenTwoLongitudes(void); 00082 00083 /** \brief Test GEODESY_RotateVectorFromLocalGeodeticFrameToEarthFixedFrame(). */ 00084 void test_GEODESY_RotateVectorFromLocalGeodeticFrameToEarthFixedFrame(void); 00085 00086 /** \brief Test GEODESY_RotateVectorFromEarthFixedFrameToLocalGeodeticFrame(). */ 00087 void test_GEODESY_RotateVectorFromEarthFixedFrameToLocalGeodeticFrame(void); 00088 00089 /** \brief Test GEODESY_ComputeAzimuthAndElevationAnglesBetweenToPointsInTheEarthFixedFrame(). */ 00090 void test_GEODESY_ComputeAzimuthAndElevationAnglesBetweenToPointsInTheEarthFixedFrame(void); 00091 00092 #ifdef __cplusplus 00093 } 00094 #endif 00095 00096 #endif // _C_TEST_GEODESY_H_