Table 6.1

Replace Table 6.1 with the following:

6 Object class definitions

6.1 Introduction

6.1.1 Topics

6.1.2 Notational conventions

6.2 SRM abstract object method signatures

6.2.1 Overview

6.2.2 LifeCycleObject

SRM_Create

SRM_Destroy

6.2.3 BaseSRF

SRM_GetCSCode

SRM_GetORMCodes

SRM_GetSRFCodes

6.2.4 BaseSRF2D

SRM_ChangeCoordinate2DArraySRF

SRM_ChangeCoordinate2DArraySRFObject

SRM_ChangeCoordinate2DSRF

SRM_ChangeCoordinate2DSRFObject

SRM_CreateCoordinate2D

SRM_EuclideanDistance2D

SRM_GetCoordinate2DValues

6.2.5 BaseSRF3D

SRM_ChangeCoordinate3DArraySRF

SRM_ChangeCoordinate3DArraySRFObject

SRM_ChangeCoordinate3DSRF

SRM_ChangeCoordinate3DSRFObject

SRM_ChangeDirectionArraySRF

SRM_ChangeDirectionArraySRFObject

SRM_ChangeDirectionSRF

SRM_ChangeDirectionSRFObject

SRM_CreateCoordinate3D

SRM_CreateDirection

SRM_CreateLococentricEuclidean3DSRF

SRM_EuclideanDistance3D

SRM_GetCoordinate3DValues

SRM_GetDirectionValues

SRM_GetExtendedValidRegion

SRM_GetValidRegion

SRM_SetExtendedValidRegion

SRM_SetValidRegion

6.2.6 BaseSRFwithTangentPlaneSurface

SRM_AssociateSurfaceCoordinateTPS

SRM_CreateSurfaceCoordinateTPS

SRM_EuclideanDistanceTPS

SRM_GetSurfaceCoordinateValuesTPS

SRM_PromoteSurfaceCoordinateTPS

6.2.7 BaseSRFwithEllipsoidalHeight

SRM_AssociateSurfaceCoordinateEH

SRM_CreateLocalTangentSpaceEuclideanSRF

SRM_CreateSurfaceCoordinateEH

SRM_EuclideanDistanceEH

SRM_GeodesicDistance

SRM_GetSurfaceCoordinateValuesEH

SRM_PromoteSurfaceCoordinateEH

SRM_VerticalOffset

6.2.8 BaseMapProjection

SRM_ConvergenceOfTheMeridian

SRM_GetExtendedValidGeodeticRegion

SRM_GetValidGeodeticRegion

SRM_MapAzimuth

SRM_PointDistortion

SRM_SetExtendedValidGeodeticRegion

SRM_SetValidGeodeticRegion

6.3 SRM concrete object classes

6.3.1 Overview

6.3.2 Celestiocentric

SRM_CC_Create

SRM_CC_Method_List

SRM_Celestiocentric

6.3.3 Celestiodetic

SRM_CD_Create

SRM_CD_Method_List

SRM_Celestiodetic

6.3.4 Celestiomagnetic

SRM_CM_Create

SRM_CM_Method_List

SRM_Celestiomagnetic

6.3.5 Coordinate2D

SRM_Coordinate2D_Method_List

SRM_Coordinate2D

6.3.6 Coordinate3D

SRM_Coordinate3D_Method_List

SRM_Coordinate3D

6.3.7 Direction

SRM_Direction_Method_List

SRM_Direction

6.3.8 EquatorialInertial

SRM_EI_Create

SRM_EI_Method_List

SRM_EI_EquatorialInertial

6.3.9 EquidistantCylindrical

SRM_EC_Create

SRM_EC_GetSRFParameters

SRM_EC_Method_List

SRM_EquidistantCylindrical

6.3.10 HeliosphericAriesEcliptic

SRM_HAEC_Create

SRM_HAEC_Method_List

SRM_HeliosphericAriesEcliptic

6.3.11 HeliosphericEarthEcliptic

SRM_HEEC_Create

SRM_HEEC_Method_List

SRM_HeliosphericEarthEcliptic

6.3.12 HeliosphericEarthEquatorial

SRM_HEEQ_Create

SRM_HEEQ_Method_List

SRM_HeliosphericEarthEquatorial

6.3.13 LambertConformalConic

SRM_LCC_Create

SRM_LCC_GetSRFParameters

SRM_LCC_Method_List

SRM_LambertConformalConic

6.3.14 LocalSpaceAzimuthal

SRM_LSA_Create

SRM_LSA_Method_List

SRM_SRM_LocalSpaceAzimuthal

6.3.15 LocalSpacePolar

SRM_LSP_Create

SRM_LSP_Method_List

SRM_LocalSpacePolar

6.3.16 LocalSpaceRectangular2D

SRM_LSR_2D_Create

SRM_LSR_2D_GetSRFParameters

SRM_LSR_2D_Method_List

SRM_LocalSpaceRectangular2D

6.3.17 LocalSpaceRectangular3D

SRM_LSR_3D_Create

SRM_LSR_3D_GetSRFParameters

SRM_LSR_3D_Method_List

SRM_LocalSpaceRectangular3D

6.3.18 LocalTangentSpaceAzimuthalSpherical

SRM_LTSAS_Create

SRM_LTSAS_GetSRFParameters

SRM_LTSAS_Method_List

SRM_LocalTangentSpaceAzimuthalSpherical

6.3.19 LocalTangentSpaceCylindrical

SRM_LTSC_Create

SRM_LTSC_GetSRFParameters

SRM_LTSC_Method_List

SRM_LocalTangentSpaceCylindrical

6.3.20 LocalTangentSpaceEuclidean

SRM_LTSE_Create

SRM_LTSE_GetSRFParameters

SRM_LTSE_Method_List

SRM_LocalTangentSpaceEuclidean

6.3.21 LococentricEuclidean3D

SRM_LCE_3D_Create

SRM_LCE_3D_GetSRFParameters

SRM_LCE_3D_Method_List

SRM_LococentricEuclidean3D

6.3.22 Mercator

SRM_M_Create

SRM_M_GetSRFParameters

SRM_M_Method_List

SRM_Mercator

6.3.23 ObliqueMercatorSpherical

SRM_OMS_Create

SRM_OMS_GetSRFParameters

SRM_OMS_Method_List

SRM_ObliqueMercatorSpherical

6.3.24 Planetodetic

SRM_PD_Create

SRM_PD_Method_List

SRM_Planetodetic

6.3.25 PolarStereographic

SRM_PS_Create

SRM_PS_GetSRFParameters

SRM_PS_Method_List

SRM_PolarStereographic

6.3.26 Position2D

SRM_Position2D_Method_List

SRM_Position2D

6.3.27 Position3D

SRM_Position3D_Method_List

SRM_Position3D

6.3.28 SolarEcliptic

SRM_SEC_Create

SRM_SEC_Method_List

SRM_SolarEcliptic

6.3.29 SolarEquatorial

SRM_SEQ_Create

SRM_SEQ_Method_List

SRM_SolarEquatorial

6.3.30 SolarMagneticDipole

SRM_SMD_Create

SRM_SMD_Method_List

SRM_SolarMagneticDipole

6.3.31 SolarMagneticEcliptic

SRM_SME_Create

SRM_SME_Method_List

SRM_SolarMagneticEcliptic

6.3.32 SurfaceCoordinate

SRM_SurfaceCoordinate_Method_List

SRM_SurfaceCoordinate

6.3.33 TransverseMercator

SRM_TM_Create

SRM_TM_GetSRFParameters

SRM_TM_Method_List

SRM_TransverseMercator

6.4 Creation function for standard SRFs

6.4.1 Overview

6.4.2 CreateSRFSetMember

SRM_CreateSRFSetMember

6.4.3 CreateStandardSRF

SRM_CreateStandardSRF

6.5 Query functions

6.5.1 Overview

6.5.2 QueryORMSupport

SRM_QueryORMSupport

6.5.3 QuerySRFTSupport

SRM_QuerySRFTSupport

6.2.4

Remove the definition for SRM_Generating2D.

Remove the definition for SRM_InverseGenerating2D.

6.2.5

Insert the following definition following the definition for SRM_CreateDirection:

SRM_CreateLococentricEuclidean3DSRF

Abstract SRM API object method:  CreateLococentricEuclidean3DSRF

typedef SRM_Status_Code SRM_CreateLococentricEuclidean3DSRF (

 

SRM_Object_Reference

this_object,

 

const

SRM_Coordinate3D

*lococentre,

 

const

SRM_Direction

*primary_axis,

 

const

SRM_Direction

*secondary_axis,

 

 

SRM_Object_Reference

*lococentricEuclidean3D_srf

/* OUT */

);

Remove the definition for SRM_Generating3D.

Remove the definition for SRM_InverseGenerating3D.

6.3.2

In the definition of SRM_CC_Method_List, insert the following field definition after the definition for field CreateDirection:

SRM_CreateLococentricEuclidean3DSRF

*CreateLococentricEuclidean3D;

Remove the entry for SRM_Generating3D from the SRM_CC_Method_List definition.

Remove the entry for SRM_InverseGenerating3D from the SRM_CC_Method_List definition.

6.3.3

In the definition of SRM_CD_Method_List, insert the following field definition after the definition for field CreateLocalTangentSpaceEuclideanSRF:

SRM_CreateLococentricEuclidean3DSRF

*CreateLococentricEuclidean3D;

Remove the entry for SRM_Generating3D from the SRM_CD_Method_List definition.

Remove the entry for SRM_InverseGenerating3D from the SRM_CD_Method_List definition.

6.3.4

In the definition of SRM_CM_Method_List, insert the following field definition after the definition for field CreateDirection:

SRM_CreateLococentricEuclidean3DSRF

*CreateLococentricEuclidean3D;

Remove the entry for SRM_Generating3D from the SRM_CM_Method_List definition.

Remove the entry for SRM_InverseGenerating3D from the SRM_CM_Method_List definition.

6.3.8

In the definition of SRM_EI_Method_List, insert the following field definition after the definition for field CreateDirection:

SRM_CreateLococentricEuclidean3DSRF

*CreateLococentricEuclidean3D;

Remove the entry for SRM_Generating3D from the SRM_EI_Method_List definition.

Remove the entry for SRM_InverseGenerating3D from the SRM_EI_Method_List definition.

6.3.9

In the definition of SRM_EC_Method_List, insert the following field definition after the definition for field CreateLocalTangentSpaceEuclideanSRF:

SRM_CreateLococentricEuclidean3DSRF

*CreateLococentricEuclidean3D;

Remove the entry for SRM_Generating3D from the SRM_EC_Method_List definition.

Remove the entry for SRM_InverseGenerating3D from the SRM_EC_Method_List definition.

6.3.10

In the definition of SRM_HAEC_Method_List, insert the following field definition after the definition for field CreateDirection:

SRM_CreateLococentricEuclidean3DSRF

*CreateLococentricEuclidean3D;

Remove the entry for SRM_Generating3D from the SRM_HAEC_Method_List definition.

Remove the entry for SRM_InverseGenerating3D from the SRM_HAEC_Method_List definition.

6.3.11

In the definition of SRM_HEEC_Method_List, insert the following field definition after the definition for field CreateDirection:

SRM_CreateLococentricEuclidean3DSRF

*CreateLococentricEuclidean3D;

Remove the entry for SRM_Generating3D from the SRM_HEEC_Method_List definition.

Remove the entry for SRM_InverseGenerating3D from the SRM_HEEC_Method_List definition.

6.3.12

In the definition of SRM_HEEQ_Method_List, insert the following field definition after the definition for field CreateDirection:

SRM_CreateLococentricEuclidean3DSRF

*CreateLococentricEuclidean3D;

Remove the entry for SRM_Generating3D from the SRM_HEEQ_Method_List definition.

Remove the entry for SRM_InverseGenerating3D from the SRM_HEEQ_Method_List definition.

6.3.13

In the definition of SRM_LCC_Method_List, insert the following field definition after the definition for field CreateLocalTangentSpaceEuclideanSRF:

SRM_CreateLococentricEuclidean3DSRF

*CreateLococentricEuclidean3D;

Remove the entry for SRM_Generating3D from the SRM_LCC_Method_List definition.

Remove the entry for SRM_InverseGenerating3D from the SRM_LCC_Method_List definition.

6.3.14

Remove the entry for SRM_Generating2D from the SRM_LSA_Method_List definition.

Remove the entry for SRM_InverseGenerating2D from the SRM_LSA_Method_List definition.

6.3.15

Remove the entry for SRM_Generating2D from the SRM_LSP_Method_List definition.

Remove the entry for SRM_InverseGenerating2D from the SRM_LSP_Method_List definition.

6.3.16

Remove the entry for SRM_Generating2D from the SRM_LSR_2D_Method_List definition.

Remove the entry for SRM_InverseGenerating2D from the SRM_LSR_2D_Method_List definition.

6.3.17

In the definition of SRM_LSR_3D_Method_List, insert the following field definition after the definition for field CreateDirection:

SRM_CreateLococentricEuclidean3DSRF

*CreateLococentricEuclidean3D;

Remove the entry for SRM_Generating3D from the SRM_LSR_3D_Method_List definition.

Remove the entry for SRM_InverseGenerating3D from the SRM_LSR_3D_Method_List definition.

6.3.18

In the definition of SRM_LTSAS_Method_List, insert the following field definition after the definition for field CreateDirection:

SRM_CreateLococentricEuclidean3DSRF

*CreateLococentricEuclidean3D;

Remove the entry for SRM_Generating3D from the SRM_LTSAS_Method_List definition.

Remove the entry for SRM_InverseGenerating3D from the SRM_LTSAS_Method_List definition.

6.3.19

In the definition of SRM_LTSC_Method_List, insert the following field definition after the definition for field CreateDirection:

SRM_CreateLococentricEuclidean3DSRF

*CreateLococentricEuclidean3D;

Remove the entry for SRM_Generating3D from the SRM_LTSC_Method_List definition.

Remove the entry for SRM_InverseGenerating3D from the SRM_LTSC_Method_List definition.

6.3.20

In the definition of SRM_LTSE_Method_List, insert the following field definition after the definition for field CreateDirection:

SRM_CreateLococentricEuclidean3DSRF

*CreateLococentricEuclidean3D;

Remove the entry for SRM_Generating3D from the SRM_LTSE_Method_List definition.

Remove the entry for SRM_InverseGenerating3D from the SRM_LTSE_Method_List definition.

6.3.21

In the definition of SRM_LCE_3D_Method_List, insert the following field definition after the definition for field CreateDirection:

SRM_CreateLococentricEuclidean3DSRF

*CreateLococentricEuclidean3D;

Remove the entry for SRM_Generating3D from the SRM_LCE_3D_Method_List definition.

Remove the entry for SRM_InverseGenerating3D from the SRM_LCE_3D_Method_List definition.

6.3.22

In the definition of SRM_M_Method_List, insert the following field definition after the definition for field CreateLocalTangentSpaceEuclideanSRF:

SRM_CreateLococentricEuclidean3DSRF

*CreateLococentricEuclidean3D;

Remove the entry for SRM_Generating3D from the SRM_M_Method_List definition.

Remove the entry for SRM_InverseGenerating3D from the SRM_M_Method_List definition.

6.3.23

In the definition of SRM_OMS_Method_List, insert the following field definition after the definition for field CreateLocalTangentSpaceEuclideanSRF:

SRM_CreateLococentricEuclidean3DSRF

*CreateLococentricEuclidean3D;

Remove the entry for SRM_Generating3D from the SRM_OMS_Method_List definition.

Remove the entry for SRM_InverseGenerating3D from the SRM_OMS_Method_List definition.

6.3.24

In the definition of SRM_PD_Method_List, insert the following field definition after the definition for field CreateLocalTangentSpaceEuclideanSRF:

SRM_CreateLococentricEuclidean3DSRF

*CreateLococentricEuclidean3D;

Remove the entry for SRM_Generating3D from the SRM_PD_Method_List definition.

Remove the entry for SRM_InverseGenerating3D from the SRM_PD_Method_List definition.

6.3.25

In the definition of SRM_PS_Method_List, insert the following field definition after the definition for field CreateLocalTangentSpaceEuclideanSRF:

SRM_CreateLococentricEuclidean3DSRF

*CreateLococentricEuclidean3D;

Remove the entry for SRM_Generating3D from the SRM_PS_Method_List definition.

Remove the entry for SRM_InverseGenerating3D from the SRM_PS_Method_List definition.

6.3.28

In the definition of SRM_SEC_Method_List, insert the following field definition after the definition for field CreateDirection:

SRM_CreateLococentricEuclidean3DSRF

*CreateLococentricEuclidean3D;

Remove the entry for SRM_Generating3D from the SRM_SEC_Method_List definition.

Remove the entry for SRM_InverseGenerating3D from the SRM_SEC_Method_List definition.

6.3.29

In the definition of SRM_SEQ_Method_List, insert the following field definition after the definition for field CreateDirection:

SRM_CreateLococentricEuclidean3DSRF

*CreateLococentricEuclidean3D;

Remove the entry for SRM_Generating3D from the SRM_SEQ_Method_List definition.

Remove the entry for SRM_InverseGenerating3D from the SRM_SEQ_Method_List definition.

6.3.30

In the definition of SRM_SMD_Method_List, insert the following field definition after the definition for field CreateDirection:

SRM_CreateLococentricEuclidean3DSRF

*CreateLococentricEuclidean3D;

Remove the entry for SRM_Generating3D from the SRM_SMD_Method_List definition.

Remove the entry for SRM_InverseGenerating3D from the SRM_SMD_Method_List definition.

6.3.31

In the definition of SRM_SME_Method_List, insert the following field definition after the definition for field CreateDirection:

SRM_CreateLococentricEuclidean3DSRF

*CreateLococentricEuclidean3D;

Remove the entry for SRM_Generating3D from the SRM_SME_Method_List definition.

Remove the entry for SRM_InverseGenerating3D from the SRM_SME_Method_List definition.

6.3.33

In the definition of SRM_TM_Method_List, insert the following field definition after the definition for field CreateLocalTangentSpaceEuclideanSRF:

SRM_CreateLococentricEuclidean3DSRF

*CreateLococentricEuclidean3D;

Remove the entry for SRM_Generating3D from the SRM_TM_Method_List definition.

Remove the entry for SRM_InverseGenerating3D from the SRM_TM_Method_List definition.