Main Page | Alphabetical List | Compound List | File List | Compound Members | File Members

srm_TransverseMercator.h

Go to the documentation of this file.
00001 /* SRM API
00002  *
00003  * SRM_SDK_VER_GOES_HERE
00004  *

00006  *

00008  *
00009  * SRM_OTHERS_GOES_HERE
00010  *

00012  */
00013 
00014 #ifndef SRM_TRANSVERSEMERCATOR_H_INCLUDED
00015 #define SRM_TRANSVERSEMERCATOR_H_INCLUDED
00016 
00017 #if !defined(_WIN32)
00018 #define EXPORT_DLL
00019 #elif !defined(EXPORT_DLL)
00020 #if defined(_LIB)
00021 #define EXPORT_DLL
00022 #elif defined(_USRDLL)
00023 #define EXPORT_DLL __declspec(dllexport)
00024 #else
00025 #define EXPORT_DLL __declspec(dllimport)
00026 #endif
00027 #endif /* _WIN32 && EXPORT_DLL */
00028 
00029 #include "srm.h"
00030 
00031 #ifdef __cplusplus
00032 extern "C" {
00033 #endif
00034 
00035 
00036 
00037 
00038 
00044 typedef SRM_Status_Code SRM_TM_GetSRFParameters 
00045 (
00046         SRM_Object_Reference                         this_object,         
00047         SRM_TM_Parameters                            *parameters         /* OUT */
00048 );
00049 
00050 
00051 typedef struct {
00052    SRM_AssociateSurfaceCoordinateEH          *AssociateSurfaceCoordinate;              
00053    SRM_ChangeCoordinate3DArraySRF            *ChangeCoordinate3DArraySRF; 
00054    SRM_ChangeCoordinate3DArraySRFObject      *ChangeCoordinate3DArraySRFObject; 
00055    SRM_ChangeCoordinate3DSRF                 *ChangeCoordinate3DSRF;                   
00056    SRM_ChangeCoordinate3DSRFObject           *ChangeCoordinate3DSRFObject;             
00057    SRM_ChangeDirectionArraySRF               *ChangeDirectionArraySRF; 
00058    SRM_ChangeDirectionArraySRFObject         *ChangeDirectionArraySRFObject; 
00059    SRM_ChangeDirectionSRF                    *ChangeDirectionSRF; 
00060    SRM_ChangeOrientationSRF                  *ChangeOrientationSRF;
00061    SRM_ChangeDirectionSRFObject              *ChangeDirectionSRFObject; 
00062    SRM_ChangeOrientationSRFObject            *ChangeOrientationSRFObject;
00063    SRM_ConvergenceOfTheMeridian              *ConvergenceOfTheMeridian;                
00064    SRM_CreateCoordinate3D                    *CreateCoordinate3D;                      
00065    SRM_CreateDirection                       *CreateDirection; 
00066    SRM_CreateOrientation                     *CreateOrientation;
00067    SRM_CreateLocalTangentSpaceEuclideanSRF   *CreateLocalTangentSpaceEuclideanSRF;     
00068    SRM_CreateSurfaceCoordinateEH             *CreateSurfaceCoordinate;                 
00069    SRM_Destroy                               *Destroy;     
00070    SRM_DestroyOrientation                    *DestroyOrientation;
00071    SRM_DestroyCoordinate3D                   *DestroyCoordinate3D;                     
00072    SRM_DestroyDirection                      *DestroyDirection;                        
00073    SRM_DestroySurfaceCoordinateEH            *DestroySurfaceCoordinate;                
00074    SRM_EuclideanDistance3D                   *EuclideanDistance3D;                     
00075    SRM_EuclideanDistanceEH                   *EuclideanDistanceEH;                     
00076    SRM_GeodesicDistance                      *GeodesicDistance;                        
00077    SRM_GetCoordinate3DValues                 *GetCoordinate3DValues;                   
00078    SRM_GetCSCode                             *GetCSCode;                               
00079    SRM_GetDirectionValues                    *GetDirectionValues; 
00080    SRM_GetNaturalSRFSMemberCode              *GetNaturalSRFSMemberCode;
00081    SRM_GetOrientationValues                  *GetOrientationValues;
00082    SRM_GetExtendedValidGeodeticRegion        *GetExtendedValidGeodeticRegion;          
00083    SRM_GetExtendedValidRegion                *GetExtendedValidRegion;                  
00084    SRM_GetORMCodes                           *GetORMCodes;                             
00085    SRM_GetSRFCodes                           *GetSRFCodes;                             
00086    SRM_TM_GetSRFParameters                   *GetSRFParameters;                        
00087    SRM_GetSurfaceCoordinateValuesEH          *GetSurfaceCoordinateValues;              
00088    SRM_GetValidGeodeticRegion                *GetValidGeodeticRegion;                  
00089    SRM_GetValidRegion                        *GetValidRegion;                          
00090    SRM_MapAzimuth                            *MapAzimuth;                              
00091    SRM_PromoteSurfaceCoordinateEH            *PromoteSurfaceCoordinate;                
00092    SRM_PointDistortion                       *PointDistortion;                              
00093    SRM_SetExtendedValidGeodeticRegion        *SetExtendedValidGeodeticRegion;          
00094    SRM_SetExtendedValidRegion                *SetExtendedValidRegion;                  
00095    SRM_SetValidGeodeticRegion                *SetValidGeodeticRegion;                  
00096    SRM_SetValidRegion                        *SetValidRegion;                          
00097    SRM_VerticalOffset                        *VerticalOffset;                          
00098 } SRM_TM_Method_List;
00099 
00104 typedef struct {
00105    void                                      *state;                                   
00106    SRM_TM_Method_List                        *methods;                                 
00107 } SRM_TransverseMercator;
00108 
00109 
00117 EXPORT_DLL extern SRM_Status_Code 
00118 SRM_TM_Create 
00119 (
00120         SRM_ORM_Code                                 orm_code,                 
00121         SRM_RT_Code                                  rt_code,                 
00122   const SRM_TM_Parameters                            *parameters,          
00123         SRM_TransverseMercator                       *new_srf            /* OUT */
00124 );
00125 
00126 #ifdef __cplusplus
00127 }
00128 #endif
00129 
00130 #endif  /* #ifndef/define/endif for SRM_TRANSVERSEMERCATOR_H_INCLUDED */
00131 
00132 

C API Version: 4.1.1 - 14 Jun 2007
Copyright © 2007 SEDRIS Docs by Doxygen 1.3.2