5       Definition of fundamental data types

5.1    Introduction

5.1.1    Table of contents

Table 5.1 -- Table of contents

5 Definition of fundamental data types. 62

5.1 Introduction. 62

5.1.1    Table of contents. 62

5.1.2    Description. 69

5.2 Mapping of basic fundamental data types. 69

5.2.1    Integer data types. 69

SE_Byte  69

SE_Byte_Unsigned  69

SE_Byte_Positive  69

SE_Short_Integer 69

SE_Short_Integer_Unsigned  70

SE_Short_Integer_Positive  70

SE_Integer 70

SE_Integer_Unsigned  70

SE_Integer_Positive  70

5.2.2    Floating point data types. 70

SE_Float 70

SE_Long_Float 70

5.2.3    Character data type. 70

SE_Character 71

5.2.4    Enumerated data types. 71

SE_Access_Mode  71

SE_Boolean  71

SE_Branch_Range_Matching  71

SE_Colour_Binding  71

SE_Continuous_LOD_Select_Choice  72

SE_Display_Type  72

SE_Hierarchy_Inclusion  72

SE_ID_Implementation_Level 72

SE_Image_Scan_Direction  72

SE_Image_Scan_Direction_Z  73

SE_Inclusion_Test 73

SE_Interval_Type  73

SE_ITR_Behaviour 73

SE_LSR_Transformation_Axis 73

SE_Model_Reference_Type  74

SE_Month  74

SE_Octant 74

SE_Present_In  74

SE_Quadrant 75

SE_Reference_Surface_Elevation_Select 75

SE_Reference_Surface_LOD_Select 75

SE_Search_Bounds_Closure  75

SE_Search_Dimension  75

SE_Season  76

SE_Sibling_Traversal_Order 76

SE_State_Mismatch_Behaviour 76

SE_Time_Of_Day  76

5.2.5    Selection data types. 76

SE_Axis_Alignment 77

SE_Camera_Projection_Type  77

SE_CI_RoleCode  77

SE_Colour_Mapping  77

SE_Colour_Model 77

SE_DRM_Class 78

SE_Element_Type_Code  83

SE_Enumerated_Or_Selection_Type  83

SE_Feature_Topology_Level 84

SE_Feature_Union_Reason  84

SE_Font_Style  84

SE_Geometry_Topology_Level 85

SE_Grid_Overlap_Operator 85

SE_Image_Component_Type  85

SE_Image_Mapping_Method  85

SE_Image_Projection_Type  85

SE_Image_Signature  86

SE_Image_Wrap  86

SE_Index_Code  86

SE_Interpolation_Type  86

SE_Keyword_Type_Code  87

SE_LOD_Data_Type  87

SE_Lookup_Signature  87

SE_Lookup_Type  87

SE_Media_Format 88

SE_Ordering_Reason  88

SE_Pixel_Fill_Method  88

SE_Predefined_Function  88

SE_Property_Data_Value_Type  89

SE_Reference_Vector_Type  90

SE_Search_Quality  90

SE_Search_Rule_Type  90

SE_Search_Value_Type  91

SE_Security_Restriction_Type  91

SE_Shading_Method  91

SE_Sound_Format 91

SE_Spacing_Type  92

SE_Spatial_Index_Spacing_Units 92

SE_Status_Code  92

SE_Symbol_Format 93

SE_Time_Configuration  93

SE_Time_Data_Type  93

SE_Time_Measurement_Type  93

SE_Time_Significance  93

SE_Transmittal_API_Function  94

SE_Traversal_Order 97

SE_Underline_Style  97

SE_Unmatched_State_Behaviour 98

SE_Volumetric_Shape  98

5.2.6    Set data types. 98

SE_Display_Side  98

SE_Display_Style  98

SE_General_Hierarchy_Order 99

SE_Polygon_Flags 99

SE_Presentation_Domain  100

5.3 Structured fundamental data types. 100

5.3.1    Introduction. 100

5.3.2    Fixed size array data types. 100

SE_Matrix_3x3  101

SE_Matrix_4x4  101

SE_Vector_3  101

5.3.3    Variable size array data types. 101

SE_Animation_Range_1D   101

SE_Byte_Unsigned_1D   101

SE_Characters_1D   102

SE_Classification_Entry_1D   102

SE_EDCS_Enumerant_Code_1D   102

SE_Hierarchy_Data_Fields_1D   102

SE_Image_Mip_Extents_1D   102

SE_Index_Range_1D   102

SE_Integer_Positive_1D   103

SE_Keyword_Structure_1D   103

SE_LOD_Entry_1D   103

SE_Object_1D   103

SE_Oct_Tree_Data_Fields_1D   103

SE_Packed_Hierarchy_1D   104

SE_Packed_Hierarchy_Object_1D   104

SE_Packed_Hierarchy_Reference_1D   104

SE_Property_Data_Value_1D   104

SE_Property_Value_Fields_1D   104

SE_Reference_Symbol_1D   104

SE_Remaining_Packed_Hierarchies_List 105

SE_Quad_Tree_Data_Fields_1D   105

SE_Search_Rule_1D   105

SE_Short_Integer_1D   105

SE_Spatial_Index_Data_Fields_1D   105

SE_State_Entry_1D   106

SE_Status_Code_1D   106

SE_String_1D   106

SE_Time_Entry_1D   106

5.4 Record data types. 106

SE_Absolute_Time_Interval_Entry  106

SE_Absolute_Time_Interval_Fields 107

SE_Absolute_Time_Point_Fields 107

SE_Access_Fields 107

SE_Address 107

SE_AEC_Location_3D_Fields 108

SE_Aggregate_Feature_Fields 108

SE_Aggregate_Geometry_Fields 108

SE_ALCC_Location_3D_Fields 108

SE_Alternate_Hierarchy_Parameters 108

SE_Alternate_Hierarchy_Related_Features_Fields 108

SE_Alternate_Hierarchy_Related_Geometry_Fields 109

SE_AM_Location_3D_Fields 109

SE_Animation_Behaviour_Fields 109

SE_Animation_Range  109

SE_Animation_Related_Geometry_Fields 109

SE_Animation_Select_Parameters 110

SE_Any_Enumerated_Or_Selection_Value  110

SE_Any_Search_Value  111

SE_AOM_Location_3D_Fields 111

SE_APS_Location_3D_Fields 111

SE_Arc_Fields 111

SE_ATM_Location_3D_Fields 112

SE_Attribute_Set_Index_Fields 112

SE_Attribute_Set_Index_Control_Link_Fields 112

SE_Attribute_Set_Table_Fields 112

SE_Attribute_Set_Table_Group_Fields 112

SE_AUPS_Location_3D_Fields 112

SE_AUTM_Location_3D_Fields 113

SE_Axis_Fields 113

SE_Base_Positional_Light_Fields 113

SE_Base_Reference_Vector_Fields 113

SE_Base_Summary_Item_Fields 113

SE_Base_Time_Data_Fields 114

SE_Blend_Directional_Light_Fields 114

SE_Browse_Media_Fields 114

SE_Camera_Point_Fields 114

SE_Citation_Fields 114

SE_Classification_Data_Fields 115

SE_Classification_Entry  115

SE_Classification_Parameters 115

SE_Classification_Related_Feature_Fields 115

SE_Classification_Related_Geometry_Fields 115

SE_CMY_Colour_Control_Link_Fields 116

SE_CMY_Colour_Fields 116

SE_CMY_Data  116

SE_CMYK_Data  116

SE_Colour_Entry_Table_Fields 116

SE_Colour_Fields 117

SE_Colour_Index_Control_Link_Fields 117

SE_Colour_Index_Fields 117

SE_Colour_Shininess_Fields 117

SE_Colour_Table_Group_Fields 117

SE_Cone_Directional_Light_Fields 117

SE_Conformal_Behaviour_Fields 118

SE_Contact_Information  118

SE_Continuous_LOD_Related_Geometry_Fields 118

SE_Continuous_LOD_Select_Parameters 118

SE_Control_Link_Fields 119

SE_Cross_Reference_Fields 119

SE_Cylindrical_Volume_Extent_Entry  119

SE_Cylindrical_Volume_Extent_Fields 119

SE_Data_Quality_Fields 119

SE_Data_Table_Extents 120

SE_Description_Fields 120

SE_Distance_LOD_Data_Fields 120

SE_DRM_Class_Fields 120

SE_DRM_Class_Summary_Item_Fields 124

SE_EC_Location_2D_Fields 125

SE_EDCS_Use_Summary_Item_Fields 125

SE_Edge_Direction_Fields 125

SE_Element_Type  125

SE_Ellipse_Fields 125

SE_Elliptical_Cylinder_Fields 126

SE_Enumeration_Axis_Fields 126

SE_Environment_Root_Fields 126

SE_Environmental_Domain_Fields 126

SE_Face_Direction_Fields 126

SE_Fade_Range_Fields 126

SE_Feature_Hierarchy_Fields 127

SE_Feature_ID_Fields 127

SE_Feature_ID_Control_Link_Fields 127

SE_Flashing_Light_Behaviour_Fields 127

SE_Float_Interval 127

SE_GC_Location_3D_Fields 128

SE_GCS_Location_3D_Fields 128

SE_GD_Location_2D_Fields 128

SE_GD_Location_3D_Fields 128

SE_GEI_Location_3D_Fields 128

SE_General_Hierarchy_Select 128

SE_Geometry_ID_Fields 129

SE_Geometry_ID_Control_Link_Fields 129

SE_Geometry_Topology_Hierarchy_Fields 129

SE_GM_Location_3D_Fields 129

SE_Grid_Overlap_Fields 130

SE_GSE_Location_3D_Fields 130

SE_GSM_Location_3D_Fields 130

SE_Hierarchy_Data_Fields 130

SE_Hierarchy_Order_Parameters 130

SE_Hierarchy_Select_Parameters 131

SE_Hierarchy_Summary_Item_Fields 131

SE_HSV_Colour_Control_Link_Fields 131

SE_HSV_Colour_Fields 131

SE_HSV_Data  131

SE_Image_Anchor_Fields 132

SE_Image_Fields 132

SE_Image_Lookup_Fields 133

SE_Image_Mapping_Function_Fields 133

SE_Image_Mip_Extents 134

SE_Image_Texel_Location_3D   134

SE_Index_LOD_Data_Fields 134

SE_Index_Range  134

SE_Infinite_Light_Fields 134

SE_Inline_Colour_Fields 135

SE_In_Out_Fields 135

SE_Integer_Interval 135

SE_Integer_Unsigned_Interval 135

SE_Interface_Template_Fields 135

SE_Interval_Axis_Fields 135

SE_Interval_Axis_Value  136

SE_Irregular_Axis_Fields 136

SE_Keywords_Fields 136

SE_Keyword_Structure  136

SE_LCC_Location_2D_Fields 136

SE_Light_Rendering_Properties_Control_Link_Fields 137

SE_Light_Rendering_Properties_Fields 137

SE_Light_Source_Control_Link_Fields 137

SE_Light_Source_Fields 137

SE_Linear_Geometry_Fields 137

SE_Line_Fields 138

SE_Lineage_Fields 138

SE_Literal_Fields 138

SE_Lobe_Data_Fields 138

SE_Local_4x4_Fields 138

SE_Locale  138

SE_Location_Table_Fields 139

SE_LOD_Entry  139

SE_LOD_Related_Features_Fields 139

SE_LOD_Related_Geometry_Fields 139

SE_LOD_Select_Parameters 139

SE_LSR_Location_2D_Fields 140

SE_LSR_Location_3D_Control_Link_Fields 140

SE_LSR_Location_3D_Fields 140

SE_LTP_Location_2D_Fields 140

SE_LTP_Location_3D_Fields 140

SE_M_Location_2D_Fields 141

SE_Map_Scale_LOD_Data_Fields 141

SE_Mesh_Face_Table_Fields 141

SSE_Model_Fields 141

SE_Model_Instance_Template_Index_Fields 141

SE_Moving_Light_Behaviour_Fields 142

SE_Oct_Tree_Data_Fields 142

SE_Oct_Tree_Related_Features_Fields 142

SE_Oct_Tree_Related_Geometry_Fields 142

SE_Oct_Tree_Select_Parameters 142

SE_OM_Location_2D_Fields 142

SE_Overload_Priority_Index_Fields 143

SE_Packed_Hierarchy  143

SE_Packed_Hierarchy_Object 143

SE_Packed_Hierarchy_Reference  143

SE_Parallelepiped_Volume_Extent_Entry  143

SE_Parallelepiped_Volume_Extent_Fields 144

SE_Patch_Fields 144

SE_Perimeter_Related_Feature_Topology_Fields 144

SE_Perimeter_Related_Features_Fields 144

SE_Perimeter_Related_Geometry_Fields 144

SE_Perimeter_Related_Geometry_Topology_Fields 144

SE_Point_Of_Contact_Fields 145

SE_Polygon_Control_Link_Fields 145

SE_Polygon_Fields 145

SE_Positional_Light_Fields 145

SE_Predefined_Function_Fields 145

SE_Presentation_Domain_Fields 146

SE_Primitive_Summary_Item_Fields 146

SE_Process_Step_Fields 146

SE_Property_Characteristic_Fields 146

SE_Property_Data_Value  146

SE_Property_Description_Fields 147

SE_Property_Grid_Fields 147

SE_Property_Table_Reference_Control_Link_Fields 147

SE_Property_Table_Reference_Fields 147

SE_Property_Table_Reference_Table_Fields 148

SE_Property_Value_Fields 148

SE_PS_Location_2D_Fields 148

SE_Pseudo_Code_Function_Fields 148

SE_Pyramid_Directional_Light_Fields 148

SE_Quad_Tree_Data_Fields 148

SE_Quad_Tree_Related_Features_Fields 149

SE_Quad_Tree_Related_Geometry_Fields 149

SE_Quad_Tree_Select_Parameters 149

SE_Reference_Origin_Fields 149

SE_Reference_Surface_Fields 149

SE_Reference_Vector_Control_Link_Fields 150

SE_Reference_Vector_Fields 150

SE_Reference_Vector_With_Control_Index_Fields 150

SE_Reference_Vector_Table_Fields 150

SE_Regular_Axis_Fields 150

SE_Relative_Time_Interval_Fields 151

SE_Relative_Time_Point_Fields 151

SE_Relative_To_Absolute_Time_Interval_Entry  151

SE_Relative_To_Absolute_Time_Point_Entry  151

SE_Remaining_Objects_List 152

SE_Remaining_Packed_Hierarchies_List 152

SE_Rendering_Priority_Level_Fields 152

SE_Rendering_Properties_Fields 152

SE_RGB_Colour_Control_Link_Fields 152

SE_RGB_Colour_Fields 153

SE_RGB_Data  153

SE_Rotating_Light_Behaviour_Fields 153

SE_Rotation_Control_Link_Fields 153

SE_Rotation_Data  153

SE_Rotation_Fields 154

SE_Scale_Control_Link_Fields 154

SE_Scale_Fields 154

SE_Search_Bounds 154

SE_Search_Rule  154

SE_Search_Rule_Comp_DRM_Class 155

SE_Search_Rule_Comp_Field  155

SE_Search_Rule_Comp_Field_Array  155

SE_Search_Rule_Comp_Field_Range  155

SE_Search_Rule_Predicate  156

SE_Season_Fields 156

SE_Security_Information  156

SE_Separating_Plane_Data_Fields 156

SE_Separating_Plane_Related_Geometry_Fields 156

SE_Separating_Plane_Select_Parameters 156

SE_SM_Location_3D_Fields 157

SE_Sound_Fields 157

SE_Sound_Instance_Control_Link_Fields 157

SE_Sound_Instance_Fields 157

SE_Source_Fields 157

SE_Spatial_Index_Data_Fields 158

SE_Spatial_Index_Parameters 158

SE_Spatial_Index_Related_Feature_Topology_Fields 158

SE_Spatial_Index_Related_Features_Fields 158

SE_Spatial_Index_Related_Geometry_Fields 158

SE_Spatial_Index_Related_Geometry_Topology_Fields 159

SE_Spatial_Resolution_LOD_Data_Fields 159

SE_Spherical_Volume_Extent_Fields 159

SE_Spot_Light_Fields 159

SE_SRF_Summary_Fields 160

SE_Stamp_Behaviour_Fields 160

SE_State_Control_Link_Fields 160

SE_State_Data_Fields 160

SE_State_Entry  160

SE_State_Related_Features_Fields 161

SE_State_Related_Geometry_Fields 161

SE_State_Select_Parameters 161

SE_String  161

SE_Strobing_Light_Behaviour_Fields 161

SE_Symbol_Fields 162

SE_Table_Property_Description_Fields 162

SE_Text_Fields 162

SE_Text_Font 162

SE_Texture_Coordinate_Control_Link_Fields 162

SE_Texture_Coordinate_Fields 163

SE_Texture_Coordinate_Table_Fields 163

SE_Time_Entry  163

SE_Time_Interval_Entry  163

SE_Time_Interval_Fields 163

SE_Time_Of_Day_Fields 164

SE_Time_Point_Entry  164

SE_Time_Related_Features_Fields 164

SE_Time_Related_Geometry_Fields 164

SE_Time_Select_Parameters 164

SE_TM_Location_2D_Fields 165

SE_Translation_Control_Link_Fields 165

SE_Translation_Fields 165

SE_Translucency_Control_Link_Fields 165

SE_Translucency_Fields 165

SE_Transmittal_Root_Fields 165

SE_Transmittal_Summary_Fields 166

SE_Union_Of_Features_Fields 166

SE_Union_Of_Feature_Topology_Fields 166

SE_Union_Of_Geometry_Fields 167

SE_Union_Of_Geometry_Hierarchy_Fields 167

SE_Union_Of_Geometry_Topology_Fields 167

SE_Union_Of_Primitive_Geometry_Fields 167

SE_Unused_Fields 167

SE_UPS_Location_2D_Fields 167

SE_URN   168

SE_User_Data  168

SE_UTM_Location_2D_Fields 168

SE_Variable_Fields 168

SE_Vertex_With_Component_Indices_Fields 168

SE_Volume_Extent_Entry  169

SE_Volume_Light_Behaviour_Fields 169

SE_Volume_LOD_Data_Fields 169

SE_Volume_LOD_Entry  169

SE_World_Transformation_Fields 169

5.5 Private data types. 169

SE_Iterator 170

SE_Object 170

SE_Packed_Hierarchy_Object_Access 170

SE_Search_Boundary  170

SE_Search_Filter 170

SE_Store  170

SE_Test_Data  170

SE_Transmittal 170

5.6 Function data types. 170

SE_Search_Rule_Predicate  171

SE_Status_Logger 171

5.1.2    Description

The SEDRIS standard, ISO/IEC 18023-1, specifies a set of fundamental abstract data types. This clause gives the mapping from those data types to the data types defined in this binding. All implementation dependent data types are defined after all implementation independent data types in each category.

5.2    Mapping of basic fundamental data types

5.2.1    Integer data types

The mapping of SEDRIS abstract integer data types to data types in the C language is as follows:

SE_Byte

Abstract Data Type:         Byte

typedef char SE_Byte;

SE_Byte_Unsigned

Abstract Data Type:         Byte_Unsigned

typedef unsigned char SE_Byte_Unsigned;

SE_Byte_Positive

Abstract Data Type:         Byte_Positive

typedef unsigned char SE_Byte_Positive;

SE_Short_Integer

Abstract Data Type:         Short_Integer

typedef short SE_Short_Integer;

SE_Short_Integer_Unsigned

Abstract Data Type:         Short_Integer_Unsigned

typedef unsigned short SE_Short_Integer_Unsigned;

SE_Short_Integer_Positive

Abstract Data Type:         Short_Integer_Positive

typedef unsigned short SE_Short_Integer_Positive;

SE_Integer

Abstract Data Type:         Integer

typedef long SE_Integer;

SE_Integer_Unsigned

Abstract Data Type:         Integer_Unsigned

typedef long SE_Integer_Unsigned;

SE_Integer_Positive

Abstract Data Type:         Integer_Positive

typedef long SE_Integer_Positive;

5.2.2    Floating point data types

The mapping of SEDRIS abstract floating point data types to data types in the C language is as follows:

SE_Float

Abstract Data Type:         Float

typedef float SE_Float;

SE_Long_Float

Abstract Data Type:         Long_Float

typedef double SE_Long_Float;

5.2.3    Character data type

The SEDRIS abstract data type for individual characters is Character. This data type is mapped as follows:

SE_Character

Abstract Data Type:         Character

typedef char_t SE_Character;

The SEDRIS abstract data type for strings of characters is the String record data type. This data type is defined in 5.4. Record data types.

5.2.4    Enumerated data types

The following type definitions map the SEDRIS abstract enumerated data types to appropriate data types in the C binding.

SE_Access_Mode

Abstract Data Type:         Access_Mode

typedef enum {

SE_AM_READ_ONLY,

SE_AM_UPDATE,

SE_AM_CREATE

} SE_Access_Mode;

SE_Boolean

Abstract Data Type:         Boolean

typedef enum {

SE_FALSE,

SE_TRUE

} SE_Boolean;

SE_Branch_Range_Matching

Abstract Data Type:         Branch_Range_Matching

typedef enum {

SE_BRRNGMAT_EXACT,

SE_BRRNGMAT_FULL_CONTAINMENT,

SE_BRRNGMAT_INTERSECTION

) SE_Branch_Range_Matching;

SE_Colour_Binding

Abstract Data Type:         Colour_Binding

typedef enum {

SE_COLRB_NORMAL,

SE_COLRB_PARENT_OVERRIDE

} SE_Colour_Binding;

SE_Continuous_LOD_Select_Choice

Abstract Data Type:         Continuous_LOD_Select_Choice

typedef enum {

SE_CLOD_ALL,

SE_CLOD_LEAST_DETAILED,

SE_CLOD_MOST_DETAILED

} SE_Continuous_LOD_Select_Choice;

SE_Display_Type

Abstract Data Type:         Display_Type

typedef enum {

SE_DISPTYP_RASTER,

SE_DISPTYP_CALLIGRAPHIC

} SE_Display_Type;

SE_Hierarchy_Inclusion

Abstract Data Type:         Hierarchy_Inclusion

typedef enum {

SE_HIERINC_EXCLUDE_ALL,

SE_HIERINC_INCLUDE_ALL,

SE_HIERINC_EVALUATE_RULES

} SE_Hierarchy_Inclusion;

SE_ID_Implementation_Level

Abstract Data Type:         ID_Implementation_Level

typedef enum {

SE_IDIMPLEV_NONE,

SE_IDIMPLEV_UNIQUE,

SE_IDIMPLEV_UNIQUE_AND_PERSISTANT

} SE_ID_Implementation_Level;

SE_Image_Scan_Direction

Abstract Data Type:         Image_Scan_Direction

typedef enum {

SE_IMAGSCANDIR_RIGHT_UP,

SE_IMAGSCANDIR_RIGHT_DOWN,

SE_IMAGSCANDIR_DOWN_RIGHT,

SE_IMAGSCANDIR_DOWN_LEFT,

SE_IMAGSCANDIR_LEFT_UP,

SE_IMAGSCANDIR_LEFT_DOWN,

SE_IMAGSCANDIR_UP_RIGHT,

SE_IMAGSCANDIR_UP_LEFT

} SE_Image_Scan_Direction;

SE_Image_Scan_Direction_Z

Abstract Data Type:         Image_Scan_Direction_Z

typedef enum {

SE_IMAGSCANDIRZ_NONE,

SE_IMAGSCANDIRZ_BACK,

SE_IMAGSCANDIRZ_FRONT

} SE_Image_Scan_Direction_Z;

SE_Inclusion_Test

Abstract Data Type:         Inclusion_Test

typedef enum {

SE_INCLTST_FULLY_INCLUDED,

SE_INCLTST_PARTIALLY_INCLUDED

} SE_Inclusion_Test;

SE_Interval_Type

Abstract Data Type:         Interval_Type

typedef enum {

SE_INTRVLTYP_OPEN,

SE_INTRVLTYP_CLOSED,

SE_INTRVLTYP_LOWER_CLOSED_UPPER_OPEN,

SE_INTRVLTYP_UPPER_CLOSED_LOWER_OPEN

} SE_Interval_Type;

SE_ITR_Behaviour

Abstract Data Type:         ITR_Behaviour

typedef enum {

SE_ITRBEH_RESOLVE,

SE_ITRBEH_REPORT,

SE_ITRBEH_IGNORE

} SE_ITR_Behaviour;

SE_LSR_Transformation_Axis

Abstract Data Type:         LSR_Transformation_Axis

typedef enum {

SE_LSRAXIS_X,

SE_LSRAXIS_Y,

SE_LSRAXIS_Z,

SE_LSRAXIS_ALL,

SE_LSRAXIS_AXIS_REFERENCE_VECTOR

} SE_LSR_Transformation_Axis;

SE_Model_Reference_Type

Abstract Data Type:         Model_Reference_Type

typedef enum {

SE_MODREFTYP_COMPONENT,

SE_MODREFTYP_ROOT,

SE_MODREFTYP_ROOT_AND_COMPONENT

} SE_Model_Reference_Type;

SE_Month

Abstract Data Type:         Month

typedef enum {

SE_MONTH_JANUARY,

SE_MONTH_FEBRUARY,

SE_MONTH_MARCH,

SE_MONTH_APRIL,

SE_MONTH_MAY,

SE_MONTH_JUNE,

SE_MONTH_JULY,

SE_MONTH_AUGUST,

SE_MONTH_SEPTEMBER,

SE_MONTH_OCTOBER,

SE_MONTH_NOVEMBER,

SE_MONTH_DECEMBER

} SE_Month

SE_Octant

Abstract Data Type:         Octant

typedef enum {

SE_OCTANT_UPPER_SOUTHWEST,

SE_OCTANT_UPPER_NORTHWEST,

SE_OCTANT_LOWER_SOUTHWEST,

SE_OCTANT_LOWER_NORTHWEST,

SE_OCTANT_UPPER_SOUTHEAST,

SE_OCTANT_UPPER_NORTHEAST,

SE_OCTANT_LOWER_SOUTHEAST,

SE_OCTANT_LOWER_NORTHEAST

} SE_Octant;

SE_Present_In

Abstract Data Type:         Present_In

typedef enum {

SE_PRESENT_IN_NONE,

SE_PRESENT_IN_ENVIRONMENT_ROOT,

SE_PRESENT_IN_MODELS,

SE_PRESENT_IN_ENVIRONMENT_ROOT_AND_MODELS

} SE_Present;

SE_Quadrant

Abstract Data Type:         Quadrant

typedef enum {

SE_QUADRANT_NORTHWEST,

SE_QUADRANT_NORTHEAST,

SE_QUADRANT_SOUTHWEST,

SE_QUADRANT_SOUTHEAST

} SE_Quadrant;

SE_Reference_Surface_Elevation_Select

Abstract Data Type:         Reference_Surface_Elevation_Select

typedef enum {

SE_RSELEVSEL_CLOSEST_TO_ORM_CENTRE,

SE_RSELEVSEL_CLOSEST_TO_VERTICAL_DATUM,

SE_RSELEVSEL_HIGHEST

} SE_Reference_Surface_Elevation_Select;

SE_Reference_Surface_LOD_Select

Abstract Data Type:         Reference_Surface_LOD_Select

typedef enum {

SE_RSLODSEL_FULL,

SE_RSLODSEL_LEAST_DETAILED

} SE_Reference_Surface_LOD_Select;

SE_Search_Bounds_Closure

Abstract Data Type:         Search_Bounds_Closure

typedef enum {

SE_SEARCHBNDSCLS_FULLY_CLOSED,

SE_SEARCHBNDSCLS_PARTIAL

} SE_Search_Bounds_Closure;

SE_Search_Dimension

Abstract Data Type:         Search_Dimension

typedef enum {

SE_SEARCHDIM_TWO_DIMENSIONAL,

SE_SEARCHDIM_THREE_DIMENSIONAL_ONLY,

SE_SEARCHDIM_TWO_DIMENSIONAL_OR_THREE_DIMENSIONAL

} SE_Search_Dimension;

SE_Season

Abstract Data Type:         Season

typedef enum {

SE_SEASON_SPRING,

SE_SEASON_SUMMER,

SE_SEASON_AUTUMN,

SE_SEASON_WINTER,

SE_SEASON_DRY,

SE_SEASON_WET

} SE_Season;

SE_Sibling_Traversal_Order

Abstract Data Type:         Sibling_Traversal_Order

typedef enum {

SE_SIBTRAV_ASCENDING,

SE_SIBTRAV_DESCENDING,

SE_SIBTRAV_UNSPECIFIED

} SE_Sibling_Traversal_Order;

SE_State_Mismatch_Behaviour

Abstract Data Type:         State_Mismatch_Behaviour

typedef enum {

SE_STMISMBEH_LAST,

SE_STMISMBEH_DEFAULT,

SE_STMISMBEH_NONE

} SE_State_Mismatch_Behaviour;

SE_Time_Of_Day

Abstract Data Type:         Time_Of_Day

typedef enum {

SE_TIMEOFDAY_DAWN,

SE_TIMEOFDAY_MORNING,

SE_TIMEOFDAY_DAY,

SE_TIMEOFDAY_AFTERNOON,

SE_TIMEOFDAY_DUSK,

SE_TIMEOFDAY_EVENING,

SE_TIMEOFDAY_NIGHT

} SE_Time_Of_Day;

5.2.5    Selection data types

SEDRIS selection data types are bound to the C programming language using the SE_Short_Integer data type along with a corresponding set of macros which may be used to set and compare values for these data types. The following are the SEDRIS selection data types defined in this binding.

SE_Axis_Alignment

Abstract Data Type:         Axis_Alignment

typedef SE_Short_Integer SE_Axis_Alignment;

#define SE_AXALGN_NONE

((SE_Axis_Alignment)(1))

#define SE_AXALGN_LOWER

((SE_Axis_Alignment)(2))

#define SE_AXALGN_MEDIAN

((SE_Axis_Alignment)(3))

#define SE_AXALGN_UPPER

((SE_Axis_Alignment)(4))

#define SE_AXALGN_GEOMETRY_MEAN

((SE_Axis_Alignment)(5))

 

 

SE_Camera_Projection_Type

Abstract Data Type:         Camera_Projection_Type

typedef SE_Short_Integer SE_Camera_Projection_Type;

#define SE_CAM_ORTHOGRAPHIC

((SE_Camera_Projection_Type)(1))

#define SE_CAM_PERSPECTIVE

((SE_Camera_Projection_Type)(2))

 

 

SE_CI_RoleCode

Abstract Data Type:         CI_RoleCode

typedef SE_Short_Integer SE_CI_RoleCode;

#define SE_ROLECOD_RESPONSIBLE_PARTY

((SE_CI_RoleCode)(1))

#define SE_ROLECOD_RESOURCE_PROVIDER

((SE_CI_RoleCode)(2))

#define SE_ROLECOD_CUSTODIAN

((SE_CI_RoleCode)(3))

#define SE_ROLECOD_OWNER

((SE_CI_RoleCode)(4))

#define SE_ROLECOD_USER

((SE_CI_RoleCode)(5))

#define SE_ROLECOD_DISTRIBUTOR

((SE_CI_RoleCode)(6))

#define SE_ROLECOD_ORIGINATOR

((SE_CI_RoleCode)(7))

#define SE_ROLECOD_POINT_OF_CONTACT

((SE_CI_RoleCode)(8))

#define SE_ROLECOD_PRINCIPAL_INVESTIGATOR

((SE_CI_RoleCode)(9))

#define SE_ROLECOD_PROCESSOR

((SE_CI_RoleCode)(10))

#define SE_ROLECOD_PUBLISHER

((SE_CI_RoleCode)(11))

SE_Colour_Mapping

Abstract Data Type:         Colour_Mapping

typedef SE_Short_Integer SE_Colour_Mapping;

#define SE_COLRMAP_FRONT_PRIMARY

((SE_Colour_Mapping)(1))

#define SE_COLRMAP_FRONT_DISTANCE_BLEND

((SE_Colour_Mapping)(2))

#define SE_COLRMAP_FRONT_IMAGE_BLEND

((SE_Colour_Mapping)(3))

#define SE_COLRMAP_BACK_PRIMARY

((SE_Colour_Mapping)(4))

#define SE_COLRMAP_BACK_DISTANCE_BLEND

((SE_Colour_Mapping)(5))

#define SE_COLRMAP_BACK_IMAGE_BLEND

((SE_Colour_Mapping)(6))

#define SE_COLRMAP_PRIMARY_LIGHT_RENDERING_BEHAVIOUR

((SE_Colour_Mapping)(10))

#define SE_COLRMAP_SECONDARY_LIGHT_RENDERING_BEHAVIOUR

((SE_Colour_Mapping)(11))

 

 

SE_Colour_Model

Abstract Data Type:         Colour_Model

typedef SE_Short_Integer SE_Colour_Model;

#define SE_COLRMOD_RGB

((SE_ColourModel)(1))

#define SE_COLRMOD_CMY

((SE_ColourModel)(2))

#define SE_COLRMOD_HSV

((SE_ColourModel)(3))

 

 

SE_DRM_Class

Abstract Data Type:         DRM_Class

typedef SE_Short_Integer SE_DRM_Class;

#define SE_CLS_NULL

((SE_DRM_Class)(1))

#define SE_CLS_ABSOLUTE_TIME_INTERVAL

((SE_DRM_Class)(2))

#define SE_CLS_ABSOLUTE_TIME_POINT

((SE_DRM_Class)(3))

#define SE_CLS_ACCESS

((SE_DRM_Class)(4))

#define SE_CLS_AEC_LOCATION_3D

((SE_DRM_Class)(5))

#define SE_CLS_AGGREGATE_FEATURE

((SE_DRM_Class)(6))

#define SE_CLS_AGGREGATE_GEOMETRY

((SE_DRM_Class)(7))

#define SE_CLS_ALCC_LOCATION_3D

((SE_DRM_Class)(8))

#define SE_CLS_ALT_HIER_RELATED_FEATURES

((SE_DRM_Class)(9))

#define SE_CLS_ALT_HIER_RELATED_GEOMETRY

((SE_DRM_Class)(10))

#define SE_CLS_AM_LOCATION_3D

((SE_DRM_Class)(11))

#define SE_CLS_AMBIENT_COLOUR

((SE_DRM_Class)(12))

#define SE_CLS_ANIMATION_BEHAVIOUR

((SE_DRM_Class)(13))

#define SE_CLS_ANIMATION_RELATED_GEOMETRY

((SE_DRM_Class)(14))

#define SE_CLS_AOM_LOCATION_3D

((SE_DRM_Class)(15))

#define SE_CLS_APS_LOCATION_3D

((SE_DRM_Class)(16))

#define SE_CLS_ARC

((SE_DRM_Class)(17))

#define SE_CLS_AREAL_FEATURE

((SE_DRM_Class)(18))

#define SE_CLS_ATM_LOCATION_3D

((SE_DRM_Class)(19))

#define SE_CLS_ATTACHMENT_POINT

((SE_DRM_Class)(20))

#define SE_CLS_ATTRIBUTE_SET

((SE_DRM_Class)(21))

#define SE_CLS_ATTRIBUTE_SET_INDEX

((SE_DRM_Class)(22))

#define SE_CLS_ATTRIBUTE_SET_INDEX_CONTROL_LINK

((SE_DRM_Class)(23))

#define SE_CLS_ATTRIBUTE_SET_TABLE

((SE_DRM_Class)(24))

#define SE_CLS_ATTRIBUTE_SET_TABLE_GROUP

((SE_DRM_Class)(25))

#define SE_CLS_ATTRIBUTE_SET_TABLE_LIBRARY

((SE_DRM_Class)(26))

#define SE_CLS_AUPS_LOCATION_3D

((SE_DRM_Class)(27))

#define SE_CLS_AUTM_LOCATION_3D

((SE_DRM_Class)(28))

#define SE_CLS_AXIS

((SE_DRM_Class)(29))

#define SE_CLS_BASE_LOD_DATA

((SE_DRM_Class)(30))

#define SE_CLS_BASE_POSITIONAL_LIGHT

((SE_DRM_Class)(31))

#define SE_CLS_BASE_REFERENCE_VECTOR

((SE_DRM_Class)(32))

#define SE_CLS_BASE_SUMMARY_ITEM

((SE_DRM_Class)(33))

#define SE_CLS_BASE_TIME_DATA

((SE_DRM_Class)(34))

#define SE_CLS_BASE_VERTEX

((SE_DRM_Class)(35))

#define SE_CLS_BLEND_DIRECTIONAL_LIGHT

((SE_DRM_Class)(36))

#define SE_CLS_BOUNDING_VOLUME

((SE_DRM_Class)(37))

#define SE_CLS_BROWSE_MEDIA

((SE_DRM_Class)(38))

#define SE_CLS_CAMERA_POINT

((SE_DRM_Class)(39))

#define SE_CLS_CENTRE_OF_BUOYANCY

((SE_DRM_Class)(40))

#define SE_CLS_CENTRE_OF_MASS

((SE_DRM_Class)(41))

#define SE_CLS_CENTRE_OF_PRESSURE

((SE_DRM_Class)(42))

#define SE_CLS_CITATION

((SE_DRM_Class)(43))

#define SE_CLS_CLASSIFICATION_DATA

((SE_DRM_Class)(44))

#define SE_CLS_CLASSIFICATION_RELATED_FEATURES

((SE_DRM_Class)(45))

#define SE_CLS_CLASSIFICATION_RELATED_GEOMETRY

((SE_DRM_Class)(46))

#define SE_CLS_CMY_COLOUR

((SE_DRM_Class)(47))

#define SE_CLS_CMY_COLOUR_CONTROL_LINK

((SE_DRM_Class)(48))

#define SE_CLS_COLLISION_VOLUME

((SE_DRM_Class)(49))

#define SE_CLS_COLOUR

((SE_DRM_Class)(50))

#define SE_CLS_COLOUR_DATA

((SE_DRM_Class)(51))

#define SE_CLS_COLOUR_ENTRY

((SE_DRM_Class)(52))

#define SE_CLS_COLOUR_ENTRY_TABLE

((SE_DRM_Class)(53))

#define SE_CLS_COLOUR_INDEX

((SE_DRM_Class)(54))

#define SE_CLS_COLOUR_INDEX_CONTROL_LINK

((SE_DRM_Class)(55))

#define SE_CLS_COLOUR_SET

((SE_DRM_Class)(56))

#define SE_CLS_COLOUR_SHININESS

((SE_DRM_Class)(57))

#define SE_CLS_COLOUR_TABLE

((SE_DRM_Class)(58))

#define SE_CLS_COLOUR_TABLE_GROUP

((SE_DRM_Class)(59))

#define SE_CLS_COLOUR_TABLE_LIBRARY

((SE_DRM_Class)(60))

#define SE_CLS_CONE_DIRECTIONAL_LIGHT

((SE_DRM_Class)(61))

#define SE_CLS_CONFORMAL_BEHAVIOUR

((SE_DRM_Class)(62))

#define SE_CLS_CONNECTED_FEATURE_EDGE

((SE_DRM_Class)(63))

#define SE_CLS_CONNECTED_GEOMETRY_EDGE

((SE_DRM_Class)(64))

#define SE_CLS_CONTACT_POINT

((SE_DRM_Class)(65))

#define SE_CLS_CONTINUOUS_LOD_RELATED_GEOMETRY

((SE_DRM_Class)(66))

#define SE_CLS_CONTROL_LINK

((SE_DRM_Class)(67))

#define SE_CLS_CYLINDRICAL_VOLUME_EXTENT

((SE_DRM_Class)(68))

#define SE_CLS_DATA_QUALITY

((SE_DRM_Class)(69))

#define SE_CLS_DATA_TABLE

((SE_DRM_Class)(70))

#define SE_CLS_DATA_TABLE_LIBRARY

((SE_DRM_Class)(71))

#define SE_CLS_DESCRIPTION

((SE_DRM_Class)(72))

#define SE_CLS_DIFFUSE_COLOUR

((SE_DRM_Class)(73))

#define SE_CLS_DIRECTIONAL_LIGHT_BEHAVIOUR

((SE_DRM_Class)(74))

#define SE_CLS_DISTANCE_LOD_DATA

((SE_DRM_Class)(75))

#define SE_CLS_DRM_CLASS_SUMMARY_ITEM

((SE_DRM_Class)(76))

#define SE_CLS_EC_LOCATION_2D

((SE_DRM_Class)(77))

#define SE_CLS_EDCS_USE_SUMMARY_ITEM

((SE_DRM_Class)(78))

#define SE_CLS_EDGE_DIRECTION

((SE_DRM_Class)(79))

#define SE_CLS_ELLIPSE

((SE_DRM_Class)(80))

#define SE_CLS_ELLIPTIC_CYLINDER

((SE_DRM_Class)(81))

#define SE_CLS_EMISSIVE_COLOUR

((SE_DRM_Class)(82))

#define SE_CLS_ENUMERATION_AXIS

((SE_DRM_Class)(83))

#define SE_CLS_ENVIRONMENTAL_DOMAIN_SUMMARY

((SE_DRM_Class)(84))

#define SE_CLS_ENVIRONMENT_ROOT

((SE_DRM_Class)(85))

#define SE_CLS_EXPRESSION

((SE_DRM_Class)(86))

#define SE_CLS_EXTERNAL_FEATURE_FACE_RING

((SE_DRM_Class)(87))

#define SE_CLS_FACE_DIRECTION

((SE_DRM_Class)(88))

#define SE_CLS_FADE_RANGE

((SE_DRM_Class)(89))

#define SE_CLS_FEATURE

((SE_DRM_Class)(90))

#define SE_CLS_REATURE_EDGE

((SE_DRM_Class)(91))

#define SE_CLS_FEATURE_FACE

((SE_DRM_Class)(92))

#define SE_CLS_FEATURE_FACE_RING

((SE_DRM_Class)(93))

#define SE_CLS_FEATURE_HIERARCHY

((SE_DRM_Class)(94))

#define SE_CLS_FEATURE_ID

((SE_DRM_Class)(95))

#define SE_CLS_FEATURE_ID_CONTROL_LINK

((SE_DRM_Class)(96))

#define SE_CLS_FEATURE_MODEL

((SE_DRM_Class)(97))

#define SE_CLS_FEATURE_MODEL_INSTANCE

((SE_DRM_Class)(98))

#define SE_CLS_FEATURE_NODE

((SE_DRM_Class)(99))

#define SE_CLS_FEATURE_SAME_AS

((SE_DRM_Class)(100))

#define SE_CLS_FEATURE_TOPOLOGY

((SE_DRM_Class)(101))

#define SE_CLS_FEATURE_TOPOLOGY_HIERARCHY

((SE_DRM_Class)(102))

#define SE_CLS_FINITE_ELEMENT_MESH

((SE_DRM_Class)(103))

#define SE_CLS_FLASHING_LIGHT_BEHAVIOUR

((SE_DRM_Class)(104))

#define SE_CLS_FUNCTION

((SE_DRM_Class)(105))

#define SE_CLS_GC_LOCATION_3D

((SE_DRM_Class)(106))

#define SE_CLS_GCS_LOCATION_3D

((SE_DRM_Class)(107))

#define SE_CLS_GD_LOCATION_2D

((SE_DRM_Class)(108))

#define SE_CLS_GD_LOCATION_3D

((SE_DRM_Class)(109))

#define SE_CLS_GEI_LOCATION_3D

((SE_DRM_Class)(110))

#define SE_CLS_GEOMETRY

((SE_DRM_Class)(111))

#define SE_CLS_GEOMETRY_EDGE

((SE_DRM_Class)(112))

#define SE_CLS_GEOMETRY_FACE

((SE_DRM_Class)(113))

#define SE_CLS_GEOMETRY_FACE_RING

((SE_DRM_Class)(114))

#define SE_CLS_GEOMETRY_HIERARCHY

((SE_DRM_Class)(115))

#define SE_CLS_GEOMETRY_ID

((SE_DRM_Class)(116))

#define SE_CLS_GEOMETRY_ID_CONTROL_LINK

((SE_DRM_Class)(117))

#define SE_CLS_GEOMETRY_MODEL

((SE_DRM_Class)(118))

#define SE_CLS_GEOMETRY_MODEL_INSTANCE

((SE_DRM_Class)(119))

#define SE_CLS_GEOMETRY_NODE

((SE_DRM_Class)(120))

#define SE_CLS_GEOMETRY_SAME_AS

((SE_DRM_Class)(121))

#define SE_CLS_GEOMETRY_TOPOLOGY

((SE_DRM_Class)(122))

#define SE_CLS_GEOMETRY_TOPOLOGY_HIERARCHY

((SE_DRM_Class)(123))

#define SE_CLS_GM_LOCATION_3D

((SE_DRM_Class)(124))

#define SE_CLS_GRID_OVERLAP

((SE_DRM_Class)(125))

#define SE_CLS_GSE_LOCATION_3D

((SE_DRM_Class)(126))

#define SE_CLS_GSM_LOCATION_3D

((SE_DRM_Class)(127))

#define SE_CLS_HIERARCHICAL_TABLE

((SE_DRM_Class)(128))

#define SE_CLS_HIERARCHY_DATA

((SE_DRM_Class)(129))

#define SE_CLS_HIERARCHY_SUMMARY_ITEM

((SE_DRM_Class)(130))

#define SE_CLS_HSV_COLOUR

((SE_DRM_Class)(131))

#define SE_CLS_HSV_COLOUR_CONTROL_LINK

((SE_DRM_Class)(132))

#define SE_CLS_ICON

((SE_DRM_Class)(133))

#define SE_CLS_IMAGE

((SE_DRM_Class)(134))

#define SE_CLS_IMAGE_ANCHOR

((SE_DRM_Class)(135))

#define SE_CLS_IMAGE_LIBRARY

((SE_DRM_Class)(136))

#define SE_CLS_IMAGE_LOOKUP

((SE_DRM_Class)(137))

#define SE_CLS_IMAGE_MAPPING_FUNCTION

((SE_DRM_Class)(138))

#define SE_CLS_IN_OUT

((SE_DRM_Class)(139))

#define SE_CLS_INDEX_LEVEL_OF_DETAIL_DATA

((SE_DRM_Class)(140))

#define SE_CLS_INFINITE_LIGHT

((SE_DRM_Class)(141))

#define SE_CLS_INLINE_COLOUR

((SE_DRM_Class)(142))

#define SE_CLS_INTERFACE_TEMPLATE

((SE_DRM_Class)(143))

#define SE_CLS_INTERNAL_FEATURE_FACE_RING

((SE_DRM_Class)(144))

#define SE_CLS_INTERVAL_AXIS

((SE_DRM_Class)(145))

#define SE_CLS_IRREGULAR_AXIS

((SE_DRM_Class)(146))

#define SE_CLS_KEYWORDS

((SE_DRM_Class)(147))

#define SE_CLS_LABEL

((SE_DRM_Class)(148))

#define SE_CLS_LCC_LOCATION_2D

((SE_DRM_Class)(149))

#define SE_CLS_LOD_RELATED_FEATURES

((SE_DRM_Class)(150))

#define SE_CLS_LOD_RELATED_GEOMETRY

((SE_DRM_Class)(151))

#define SE_CLS_LIBRARY

((SE_DRM_Class)(152))

#define SE_CLS_LIGHT_RENDERING_BEHAVIOUR

((SE_DRM_Class)(153))

#define SE_CLS_LIGHT_RENDERING_PROPERTIES

((SE_DRM_Class)(154))

#define SE_CLS_LIGHT_RENDERING_PROP_CONTROL_LINK

((SE_DRM_Class)(155))

#define SE_CLS_LIGHT_SOURCE

((SE_DRM_Class)(156))

#define SE_CLS_LIGHT_SOURCE_CONTROL_LINK

((SE_DRM_Class)(157))

#define SE_CLS_LINE

((SE_DRM_Class)(158))

#define SE_CLS_LINEAGE

((SE_DRM_Class)(159))

#define SE_CLS_LINEAR_FEATURE

((SE_DRM_Class)(160))

#define SE_CLS_LINEAR_GEOMETRY

((SE_DRM_Class)(161))

#define SE_CLS_LITERAL

((SE_DRM_Class)(162))

#define SE_CLS_LOBE_DATA

((SE_DRM_Class)(163))

#define SE_CLS_LOCAL_4X4

((SE_DRM_Class)(164))

#define SE_CLS_LOCATION

((SE_DRM_Class)(165))

#define SE_CLS_LOCATION_2D

((SE_DRM_Class)(166))

#define SE_CLS_LOCATION_3D

((SE_DRM_Class)(167))

#define SE_CLS_LOCATION_TABLE

((SE_DRM_Class)(168))

#define SE_CLS_LSR_LOCATION_2D

((SE_DRM_Class)(169))

#define SE_CLS_LSR_LOCATION_3D

((SE_DRM_Class)(170))

#define SE_CLS_LSR_LOCATION_3D_CONTROL_LINK

((SE_DRM_Class)(171))

#define SE_CLS_LSR_TRANSFORMATION

((SE_DRM_Class)(172))

#define SE_CLS_LSR_TRANSFORMATION_STEP

((SE_DRM_Class)(173))

#define SE_CLS_LTP_LOCATION_2D

((SE_DRM_Class)(174))

#define SE_CLS_LTP_LOCATION_3D

((SE_DRM_Class)(175))

#define SE_CLS_M_LOCATION_2D

((SE_DRM_Class)(176))

#define SE_CLS_MAP_SCALE_LEVEL_OF_DETAIL_DATA

((SE_DRM_Class)(177))

#define SE_CLS_MESH_FACE_TABLE

((SE_DRM_Class)(178))

#define SE_CLS_MODEL

((SE_DRM_Class)(179))

#define SE_CLS_MODEL_INSTANCE_TEMPLATE_INDEX

((SE_DRM_Class)(180))

#define SE_CLS_MODEL_LIBRARY

((SE_DRM_Class)(181))

#define SE_CLS_MORPH_POINT

((SE_DRM_Class)(182))

#define SE_CLS_MOVING_LIGHT_BEHAVIOUR

((SE_DRM_Class)(183))

#define SE_CLS_OCT_TREE_DATA

((SE_DRM_Class)(184))

#define SE_CLS_OCT_TREE_RELATED_FEATURES

((SE_DRM_Class)(185))

#define SE_CLS_OCT_TREE_RELATED_GEOMETRY

((SE_DRM_Class)(186))

#define SE_CLS_OM_LOCATION_2D

((SE_DRM_Class)(187))

#define SE_CLS_OVERLOAD_PRIORITY_INDEX

((SE_DRM_Class)(188))

#define SE_CLS_PARALLELEPIPED_VOLUME_EXTENT

((SE_DRM_Class)(189))

#define SE_CLS_PATCH

((SE_DRM_Class)(190))

#define SE_CLS_PERIMETER_DATA

((SE_DRM_Class)(191))

#define SE_CLS_PERIMETER_RELATED_FEATURE_TOPOLOGY

((SE_DRM_Class)(192))

#define SE_CLS_PERIMETER_RELATED_FEATURES

((SE_DRM_Class)(193))

#define SE_CLS_PERIMETER_RELATED_GEOMETRY

((SE_DRM_Class)(194))

#define SE_CLS_PERIMETER_RELATED_GEOMETRY_TOPOLOGY

((SE_DRM_Class)(195))

#define SE_CLS_POINT

((SE_DRM_Class)(196))

#define SE_CLS_POINT_FEATURE

((SE_DRM_Class)(197))

#define SE_CLS_POINT_OF_CONTACT

((SE_DRM_Class)(198))

#define SE_CLS_POLYGON

((SE_DRM_Class)(199))

#define SE_CLS_POLYGON_CONTROL_LINK

((SE_DRM_Class)(200))

#define SE_CLS_POSITIONAL_LIGHT

((SE_DRM_Class)(201))

#define SE_CLS_PREDEFINED_FUNCTION

((SE_DRM_Class)(202))

#define SE_CLS_PRESENTATION_DOMAIN

((SE_DRM_Class)(203))

#define SE_CLS_PRIMITIVE_COLOUR

((SE_DRM_Class)(204))

#define SE_CLS_PRIMITIVE_FEATURE

((SE_DRM_Class)(205))

#define SE_CLS_PRIMITIVE_GEOMETRY

((SE_DRM_Class)(206))

#define SE_CLS_PRIMITIVE_SUMMARY_ITEM

((SE_DRM_Class)(207))

#define SE_CLS_PROCESS_STEP

((SE_DRM_Class)(208))

#define SE_CLS_PROPERTY

((SE_DRM_Class)(209))

#define SE_CLS_PROPERTY_CHARACTERISTIC

((SE_DRM_Class)(210))

#define SE_CLS_PROPERTY_DESCRIPTION

((SE_DRM_Class)(211))

#define SE_CLS_PROPERTY_GRID

((SE_DRM_Class)(212))

#define SE_CLS_PROPERTY_GRID_HOOK_POINT

((SE_DRM_Class)(213))

#define SE_CLS_PROPERTY_TABLE

((SE_DRM_Class)(214))

#define SE_CLS_PROPERTY_TABLE_REFERENCE

((SE_DRM_Class)(215))

#define SE_CLS_PROP_TABLE_REFERENCE_CONTROL_LINK

((SE_DRM_Class)(216))

#define SE_CLS_PROPERTY_TABLE_REFERENCE_ENTRY

((SE_DRM_Class)(217))

#define SE_CLS_PROPERTY_TABLE_REFERENCE_SET

((SE_DRM_Class)(218))

#define SE_CLS_PROPERTY_TABLE_REFERENCE_TABLE

((SE_DRM_Class)(219))

#define SE_CLS_PROPERTY_VALUE

((SE_DRM_Class)(220))

#define SE_CLS_PS_LOCATION_2D

((SE_DRM_Class)(221))

#define SE_CLS_PSEUDO_CODE_FUNCTION

((SE_DRM_Class)(222))

#define SE_CLS_PYRAMID_DIRECTIONAL_LIGHT

((SE_DRM_Class)(223))

#define SE_CLS_QUAD_TREE_DATA

((SE_DRM_Class)(224))

#define SE_CLS_QUAD_TREE_RELATED_FEATURES

((SE_DRM_Class)(225))

#define SE_CLS_QUAD_TREE_RELATED_GEOMETRY

((SE_DRM_Class)(226))

#define SE_CLS_REFERENCE_ORIGIN

((SE_DRM_Class)(227))

#define SE_CLS_REFERENCE_SURFACE

((SE_DRM_Class)(228))

#define SE_CLS_REFERENCE_VECTOR

((SE_DRM_Class)(229))

#define SE_CLS_REFERENCE_VECTOR_CONTROL_LINK

((SE_DRM_Class)(230))

#define SE_CLS_REFERENCE_VECTOR_TABLE

((SE_DRM_Class)(231))

#define SE_CLS_REFERENCE_VECTOR_W_LOCATION_INDICES

((SE_DRM_Class)(232))

#define SE_CLS_REGULAR_AXIS

((SE_DRM_Class)(233))

#define SE_CLS_REGULAR_FEATURE_FACE

((SE_DRM_Class)(234))

#define SE_CLS_RELATIVE_TIME_INTERVAL

((SE_DRM_Class)(235))

#define SE_CLS_RELATIVE_TIME_POINT

((SE_DRM_Class)(236))

#define SE_CLS_RENDERING_PRIORITY_LEVEL

((SE_DRM_Class)(237))

#define SE_CLS_RENDERING_PROPERTIES

((SE_DRM_Class)(238))

#define SE_CLS_RGB_COLOUR

((SE_DRM_Class)(239))

#define SE_CLS_RGB_COLOUR_CONTROL_LINK

((SE_DRM_Class)(240))

#define SE_CLS_ROTATING_LIGHT_BEHAVIOUR

((SE_DRM_Class)(241))

#define SE_CLS_ROTATION

((SE_DRM_Class)(242))

#define SE_CLS_ROTATION_CONTROL_LINK

((SE_DRM_Class)(243))

#define SE_CLS_SAME_AS_FEATURE_EDGE

((SE_DRM_Class)(244))

#define SE_CLS_SAME_AS_FEATURE_FACE

((SE_DRM_Class)(245))

#define SE_CLS_SAME_AS_FEATURE_NODE

((SE_DRM_Class)(246))

#define SE_CLS_SAME_AS_GEOMETRY_EDGE

((SE_DRM_Class)(247))

#define SE_CLS_SAME_AS_GEOMETRY_FACE

((SE_DRM_Class)(248))

#define SE_CLS_SAME_AS_GEOMETRY_NODE

((SE_DRM_Class)(249))

#define SE_CLS_SCALE

((SE_DRM_Class)(250))

#define SE_CLS_SCALE_CONTROL_LINK

((SE_DRM_Class)(251))

#define SE_CLS_SEASON

((SE_DRM_Class)(252))

#define SE_CLS_SEDRIS_ABSTRACT_BASE

((SE_DRM_Class)(253))

#define SE_CLS_SEPARATING_PLANE

((SE_DRM_Class)(254))

#define SE_CLS_SEPARATING_PLANE_DATA

((SE_DRM_Class)(255))

#define SE_CLS_SEPARATING_PLANE_RELATED_GEOMETRY

((SE_DRM_Class)(256))

#define SE_CLS_SEPARATING_PLANE_RELATIONS

((SE_DRM_Class)(257))

#define SE_CLS_SM_LOCATION_3D

((SE_DRM_Class)(258))

#define SE_CLS_SOUND

((SE_DRM_Class)(259))

#define SE_CLS_SOUND_INSTANCE

((SE_DRM_Class)(260))

#define SE_CLS_SOUND_INSTANCE_CONTROL_LINK

((SE_DRM_Class)(261))

#define SE_CLS_SOUND_LIBRARY

((SE_DRM_Class)(262))

#define SE_CLS_SOUND_VOLUME

((SE_DRM_Class)(263))

#define SE_CLS_SOURCE

((SE_DRM_Class)(264))

#define SE_CLS_SPATIAL_DOMAIN

((SE_DRM_Class)(265))

#define SE_CLS_SPATIAL_INDEX_DATA

((SE_DRM_Class)(266))

#define SE_CLS_SPATIAL_IDX_REL_FEATURE_TOPOLOGY

((SE_DRM_Class)(267))

#define SE_CLS_SPATIAL_IDX_REL_FEATURES

((SE_DRM_Class)(268))

#define SE_CLS_SPATIAL_IDX_REL_GEOM

((SE_DRM_Class)(269))

#define SE_CLS_SPATIAL_IDX_REL_GEOM_TOPOLOGY

((SE_DRM_Class)(270))

#define SE_CLS_SPATIAL_RESOLUTION_LOD_DATA

((SE_DRM_Class)(271))

#define SE_CLS_SPECULAR_COLOUR

((SE_DRM_Class)(272))

#define SE_CLS_SPHERICAL_VOLUME_EXTENT

((SE_DRM_Class)(273))

#define SE_CLS_SPOT_LIGHT

((SE_DRM_Class)(274))

#define SE_CLS_SRF_SUMMARY

((SE_DRM_Class)(275))

#define SE_CLS_STAMP_BEHAVIOUR

((SE_DRM_Class)(276))

#define SE_CLS_STATE_CONTROL_LINK

((SE_DRM_Class)(277))

#define SE_CLS_STATE_DATA

((SE_DRM_Class)(278))

#define SE_CLS_STATE_RELATED_FEATURES

((SE_DRM_Class)(279))

#define SE_CLS_STATE_RELATED_GEOMETRY

((SE_DRM_Class)(280))

#define SE_CLS_STROBING_LIGHT_BEHAVIOUR

((SE_DRM_Class)(281))

#define SE_CLS_SURFACE_GEOMETRY

((SE_DRM_Class)(282))

#define SE_CLS_SYMBOL

((SE_DRM_Class)(283))

#define SE_CLS_SYMBOL_LIBRARY

((SE_DRM_Class)(284))

#define SE_CLS_TABLE_PROPERTY_DESCRIPTION

((SE_DRM_Class)(285))

#define SE_CLS_TACK_POINT

((SE_DRM_Class)(286))

#define SE_CLS_TEXT

((SE_DRM_Class)(287))

#define SE_CLS_TEXTURE_COORDINATE

((SE_DRM_Class)(288))

#define SE_CLS_TEXTURE_COORDINATE_CONTROL_LINK

((SE_DRM_Class)(289))

#define SE_CLS_TEXTURE_COORDINATE_ENTRY

((SE_DRM_Class)(290))

#define SE_CLS_TEXTURE_COORDINATE_SET

((SE_DRM_Class)(291))

#define SE_CLS_TEXTURE_COORDINATE_TABLE

((SE_DRM_Class)(292))

#define SE_CLS_TIME_CONSTRAINTS_DATA

((SE_DRM_Class)(293))

#define SE_CLS_TIME_INTERVAL

((SE_DRM_Class)(294))

#define SE_CLS_TIME_OF_DAY

((SE_DRM_Class)(295))

#define SE_CLS_TIME_POINT

((SE_DRM_Class)(296))

#define SE_CLS_TIME_RELATED_FEATURES

((SE_DRM_Class)(297))

#define SE_CLS_TIME_RELATED_GEOMETRY

((SE_DRM_Class)(298))

#define SE_CLS_TM_LOCATION_2D

((SE_DRM_Class)(299))

#define SE_CLS_TRANSFORMATION

((SE_DRM_Class)(300))

#define SE_CLS_TRANSLATION

((SE_DRM_Class)(301))

#define SE_CLS_TRANSLATION_CONTROL_LINK

((SE_DRM_Class)(302))

#define SE_CLS_TRANSLUCENCY

((SE_DRM_Class)(303))

#define SE_CLS_TRANSLUCENCY_CONTROL_LINK

((SE_DRM_Class)(304))

#define SE_CLS_TRANSMITTAL_ROOT

((SE_DRM_Class)(305))

#define SE_CLS_TRANSMITTAL_SUMMARY

((SE_DRM_Class)(306))

#define SE_CLS_TWINKLING_LIGHT_BEHAVIOUR

((SE_DRM_Class)(307))

#define SE_CLS_UNION_OF_FEATURE_TOPOLOGY

((SE_DRM_Class)(308))

#define SE_CLS_UNION_OF_FEATURES

((SE_DRM_Class)(309))

#define SE_CLS_UNION_OF_GEOMETRY

((SE_DRM_Class)(310))

#define SE_CLS_UNION_OF_GEOMETRY_HIERARCHY

((SE_DRM_Class)(311))

#define SE_CLS_UNION_OF_GEOMETRY_TOPOLOGY

((SE_DRM_Class)(312))

#define SE_CLS_UNION_OF_PRIMITIVE_GEOMETRY

((SE_DRM_Class)(313))

#define SE_CLS_UNIVERSAL_FEATURE_FACE

((SE_DRM_Class)(314))

#define SE_CLS_UPS_LOCATION_2D

((SE_DRM_Class)(315))

#define SE_CLS_UTM_LOCATION_2D

((SE_DRM_Class)(316))

#define SE_CLS_VARIABLE

((SE_DRM_Class)(317))

#define SE_CLS_VERTEX

((SE_DRM_Class)(318))

#define SE_CLS_VERTEX_WITH_COMPONENT_INDICES

((SE_DRM_Class)(319))

#define SE_CLS_VOLUME

((SE_DRM_Class)(320))

#define SE_CLS_VOLUME_EXTENT

((SE_DRM_Class)(321))

#define SE_CLS_VOLUME_GEOMETRY

((SE_DRM_Class)(322))

#define SE_CLS_VOLUME_LOD_DATA

((SE_DRM_Class)(323))

#define SE_CLS_VOLUME_LIGHT_BEHAVIOUR

((SE_DRM_Class)(324))

#define SE_CLS_WORLD_TRANSFORMATION

((SE_DRM_Class)(325))

SE_Element_Type_Code

Abstract Data Type:         Element_Type_Code

typedef SE_Short_Integer   SE_Element_Type_Code;

#define SE_ELEM_TYPE_ATTRIBUTE

((SE_Element_Type_Code)(1))

#define SE_ELEM_TYPE_INDEX

((SE_Element_Type_Code)(2))

#define SE_ELEM_TYPE_VARIABLE

((SE_Element_Type_Code)(3))

SE_Enumerated_Or_Selection_Type

Abstract Data Type:         Enumerated_Or_Selection_Type

typedef SE_Short_Integer   SE_Enumerated_Or_Selection_Type;

#define SE_ENUMSEL_NULL_TYPE

((SE_Enumerated_Or_Selection_Type)(1))

#define SE_ENUMSEL_AXIS_ALIGNMENT

((SE_Enumerated_Or_Selection_Type)(2))

#define SE_ENUMSEL_CAMERA_PROJECTION_TYPE

((SE_Enumerated_Or_Selection_Type)(3))

#define SE_ENUMSEL_COLOUR_BINDING

((SE_Enumerated_Or_Selection_Type)(4))

#define SE_ENUMSEL_COLOUR_MAPPING

((SE_Enumerated_Or_Selection_Type)(5))

#define SE_ENUMSEL_COLOUR_MODEL

((SE_Enumerated_Or_Selection_Type)(6))

#define SE_ENUMSEL_DISPLAY_SIDE

((SE_Enumerated_Or_Selection_Type)(7))

#define SE_ENUMSEL_DISPLAY_STYLE

((SE_Enumerated_Or_Selection_Type)(8))

#define SE_ENUMSEL_DISPLAY_TYPE

((SE_Enumerated_Or_Selection_Type)(9))

#define SE_ENUMSEL_DRM_CLASS

((SE_Enumerated_Or_Selection_Type)(10))

#define SE_ENUMSEL_FEATURE_UNION_REASON

((SE_Enumerated_Or_Selection_Type)(11))

#define SE_ENUMSEL_GRID_OVERLAP_OPERATOR

((SE_Enumerated_Or_Selection_Type)(12))

#define SE_ENUMSEL_IMAGE_COMPONENT

((SE_Enumerated_Or_Selection_Type)(13))

#define SE_ENUMSEL_IMAGE_MAPPING_METHOD

((SE_Enumerated_Or_Selection_Type)(14))

#define SE_ENUMSEL_IMAGE_PROJECTION_TYPE

((SE_Enumerated_Or_Selection_Type)(15))

#define SE_ENUMSEL_IMAGE_SCAN_DIRECTION

((SE_Enumerated_Or_Selection_Type)(16))

#define SE_ENUMSEL_IMAGE_SCAN_DIRECTION_Z

((SE_Enumerated_Or_Selection_Type)(17))

#define SE_ENUMSEL_IMAGE_SIGNATURE

((SE_Enumerated_Or_Selection_Type)(18))

#define SE_ENUMSEL_IMAGE_WRAP

((SE_Enumerated_Or_Selection_Type)(19))

#define SE_ENUMSEL_INTERPOLATION_TYPE

((SE_Enumerated_Or_Selection_Type)(20))

#define SE_ENUMSEL_LOD_DATA_TYPE

((SE_Enumerated_Or_Selection_Type)(21))

#define SE_ENUMSEL_LOOKUP_SIGNATURE

((SE_Enumerated_Or_Selection_Type)(22))

#define SE_ENUMSEL_LOOKUP_TYPE

((SE_Enumerated_Or_Selection_Type)(23))

#define SE_ENUMSEL_LSR_TRANSFORMATION_AXIS

((SE_Enumerated_Or_Selection_Type)(24))

#define SE_ENUMSEL_MODEL_REFERENCE_TYPE

((SE_Enumerated_Or_Selection_Type)(25))

#define SE_ENUMSEL_MONTH

((SE_Enumerated_Or_Selection_Type)(26))

#define SE_ENUMSEL_MULTIPLICITY_CODE

((SE_Enumerated_Or_Selection_Type)(27))

#define SE_ENUMSEL_OCTANT

((SE_Enumerated_Or_Selection_Type)(28))

#define SE_ENUMSEL_ORDERING_REASON

((SE_Enumerated_Or_Selection_Type)(29))

#define SE_ENUMSEL_PIXEL_FILL_METHOD

((SE_Enumerated_Or_Selection_Type)(30))

#define SE_ENUMSEL_PREDEFINED_FUNCTION

((SE_Enumerated_Or_Selection_Type)(31))

#define SE_ENUMSEL_PRESENT_IN

((SE_Enumerated_Or_Selection_Type)(32))

#define SE_ENUMSEL_PROPERTY_DATA_VALUE_TYPE

((SE_Enumerated_Or_Selection_Type)(33))

#define SE_ENUMSEL_QUADRANT

((SE_Enumerated_Or_Selection_Type)(34))

#define SE_ENUMSEL_REFERENCE_VECTOR_TYPE

((SE_Enumerated_Or_Selection_Type)(35))

#define SE_ENUMSEL_REFERENCE_SURFACE_ELEVATION

((SE_Enumerated_Or_Selection_Type)(36))

#define SE_ENUMSEL_REFERENCE_SURFACE_LOD

((SE_Enumerated_Or_Selection_Type)(37))

#define SE_ENUMSEL_SEASON

((SE_Enumerated_Or_Selection_Type)(38))

#define SE_ENUMSEL_SHADING_METHOD

((SE_Enumerated_Or_Selection_Type)(39))

#define SE_ENUMSEL_SPACING_TYPE

((SE_Enumerated_Or_Selection_Type)(40))

#define SE_ENUMSEL_SPATIAL_INDEX_SPACING_UNIT

((SE_Enumerated_Or_Selection_Type)(41))

#define SE_ENUMSEL_STATE_MISMATCH_BEHAVIOUR

((SE_Enumerated_Or_Selection_Type)(42))

#define SE_ENUMSEL_TIME_DATA_TYPE

((SE_Enumerated_Or_Selection_Type)(43))

#define SE_ENUMSEL_TIME_OF_DAY

((SE_Enumerated_Or_Selection_Type)(44))

#define SE_ENUMSEL_TIME_SIGNIFICANCE

((SE_Enumerated_Or_Selection_Type)(45))

 

 

SE_Feature_Topology_Level

Abstract Data Type:         Feature_Topology_Level

typedef SE_Short_Integer   SE_Feature_Topology_Level;

#define SE_FTL_ZERO

((SE_Feature_Topology_Level)(1))

#define SE_FTL_ONE

((SE_Feature_Topology_Level)(2))

#define SE_FTL_TWO

((SE_Feature_Topology_Level)(3))

#define SE_FTL_THREE

((SE_Feature_Topology_Level)(4))

#define SE_FTL_FOUR

((SE_Feature_Topology_Level)(5))

 

 

SE_Feature_Union_Reason

Abstract Data Type:         Feature_Union_Reason

typedef SE_Short_Integer   SE_Feature_Union_Reason;

#define SE_FUR_SHARED_ATTRIBUTE

((SE_Feature_Union_Reason)(1))

#define SE_FUR_COMPOUND

((SE_Feature_Union_Reason)(2))

#define SE_FUR_COMPLEX

((SE_Feature_Union_Reason)(3))

#define SE_FUR_TILE_REFERENCE

((SE_Feature_Union_Reason)(4))

#define SE_FUR_UNKNOWN

((SE_Feature_Union_Reason)(5))

 

 

SE_Font_Style

Abstract Data Type:         Font_Style

typedef SE_Short_Integer   SE_Font_Style;

#define SE_FONT_NORMAL

((SE_Font_Style)(1))

#define SE_FONT_BOLD

((SE_Font_Style)(2))

#define SE_FONT_ITALIC

((SE_Font_Style)(3))

#define SE_FONT_BOLD_ITALIC

((SE_Font_Style)(4))

 

 

SE_Geometry_Topology_Level

Abstract Data Type:         Geometry_Topology_Level

typedef SE_Short_Integer   SE_Geometry_Topology_Level;

#define SE_GTL_ZERO

((SE_Geometry_Topology_Level)(1))

#define SE_GTL_ONE

((SE_Geometry_Topology_Level)(2))

#define SE_GTL_TWO

((SE_Geometry_Topology_Level)(3))

#define SE_GTL_THREE

((SE_Geometry_Topology_Level)(4))

#define SE_GTL_FOUR

((SE_Geometry_Topology_Level)(5))

 

 

SE_Grid_Overlap_Operator

Abstract Data Type:         Grid_Overlap_Operator

typedef SE_Short_Integer   SE_Grid_Overlap_Operator;

#define SE_GROVLOP_BASE

((SE_Grid_Overlap_Operator)(1))

#define SE_GROVLOP_REPLACE

((SE_Grid_Overlap_Operator)(2))

#define SE_GROVLOP_MERGE

((SE_Grid_Overlap_Operator)(3))

#define SE_GROVLOP_ADD

((SE_Grid_Overlap_Operator)(4))

#define SE_GROVLOP_AVERAGE

((SE_Grid_Overlap_Operator)(5))

 

 

SE_Image_Component_Type

Abstract Data Type:         Image_Component_Type

typedef SE_Short_Integer   SE_Image_Component_Type;

#define SE_IMAGCOMP_SIGNED_INTEGER

((SE_Image_Component_Type)(1))

#define SE_IMAGCOMP_UNSIGNED_INTEGER

((SE_Image_Component_Type)(2))

#define SE_IMAGCOMP_FLOATING_POINT

((SE_Image_Component_Type)(3))

 

 

SE_Image_Mapping_Method

Abstract Data Type:         Image_Mapping_Method

typedef SE_Short_Integer   SE_Image_Mapping_Method;

#define SE_IMAGMAPMETH_REPLACE

((SE_Image_Mapping_Method)(1))

#define SE_IMAGMAPMETH_DECAL

((SE_Image_Mapping_Method)(2))

#define SE_IMAGMAPMETH_MODULATE

((SE_Image_Mapping_Method)(3))

#define SE_IMAGMAPMETH_BLEND

((SE_Image_Mapping_Method)(4))

 

 

SE_Image_Projection_Type

Abstract Data Type:         Image_Projection_Type

typedef SE_Short_Integer   SE_Image_Mapping_Method;

#define SE_IMAGPROJTYP_PLANAR

((SE_Image_Mapping_Method)(1))

#define SE_IMAGPROJTYP_CYLINDRICAL

((SE_Image_Mapping_Method)(2))

#define SE_IMAGPROJTYP_SPHERICAL

((SE_Image_Mapping_Method)(3))

 

 

SE_Image_Signature

Abstract Data Type:         Image_Signature

typedef SE_Short_Integer   SE_Image_Signature;

#define SE_IMAGSIG_ALPHA

((SE_Image_Signature)(1))

#define SE_IMAGSIG_LUMINANCE

((SE_Image_Signature)(2))

#define SE_IMAGSIG_COLOUR_COORDINATE_1

((SE_Image_Signature)(3))

#define SE_IMAGSIG_COLOUR_COORDINATE_2

((SE_Image_Signature)(4))

#define SE_IMAGSIG_COLOUR_COORDINATE_3

((SE_Image_Signature)(5))

#define SE_IMAGSIG_BUMP

((SE_Image_Signature)(6))

#define SE_IMAGSIG_BUMP_MAP_HEIGHT

((SE_Image_Signature)(7))

#define SE_IMAGSIG_EDCS_CLASSIFICATION_CODE

((SE_Image_Signature)(8))

#define SE_IMAGSIG_LUMINANCE_AND_ALPHA

((SE_Image_Signature)(9))

#define SE_IMAGSIG_123COLOUR

((SE_Image_Signature)(10))

#define SE_IMAGSIG_123COLOUR_ALPHA

((SE_Image_Signature)(11))

#define SE_IMAGSIG_ONE_MATERIAL

((SE_Image_Signature)(12))

#define SE_IMAGSIG_TWO_MATERIALS

((SE_Image_Signature)(13))

#define SE_IMAGSIG_THREE_MATERIALS

((SE_Image_Signature)(14))

#define SE_IMAGSIG_IMAGE_INDEX

((SE_Image_Signature)(15))

#define SE_IMAGSIG_BUMP_MAP_UV

((SE_Image_Signature)(16))

 

 

SE_Image_Wrap

Abstract Data Type:         Image_Wrap

typedef SE_Short_Integer   SE_Image_Wrap;

#define SE_IMAGWRAP_CLAMP

((SE_Image_Wrap)(1))

#define SE_IMAGWRAP_REPEAT

((SE_Image_Wrap)(2))

 

 

SE_Index_Code

Abstract Data Type:         Index_Code

typedef SE_Short_Integer   SE_Index_Code;

#define SE_IDXCODE_DATA_TABLE_COMPONENT

((SE_Index_Code)(1))

#define SE_IDXCODE_PROP_TABLE_REF_COMPONENT

((SE_Index_Code)(2))

#define SE_IDXCODE_DATA_TABLE_LIBRARY

((SE_Index_Code)(3))

#define SE_IDXCODE_IMAGE_MAPPING_FUNCTION

((SE_Index_Code)(4))

#define SE_IDXCODE_ADJACENT_MESH_FACE

((SE_Index_Code)(5))

#define SE_IDXCODE_ADJACENT_SOLID_ELEMENT

((SE_Index_Code)(6))

#define SE_IDXCODE_MESH_FACE

((SE_Index_Code)(7))

#define SE_IDXCODE_MESH_NODE

((SE_Index_Code)(8))

#define SE_IDXCODE_MESH_VERTEX

((SE_Index_Code)(9))

#define SE_IDXCODE_SOLID_ELEMENT

((SE_Index_Code)(10))

#define SE_IDXCODE_SOLID_FACE

((SE_Index_Code)(11))

 

 

SE_Interpolation_Type

Abstract Data Type:         Interpolation_Type

typedef SE_Short_Integer   SE_Interpolation_Type;

#define SE_INTERPTYP_DISALLOWED

((SE_Interpolation_Type)(1))

#define SE_INTERPTYP_NOT_SUPPLIED

((SE_Interpolation_Type)(2))

#define SE_INTERPTYP_METADATA_SPECIFIED

((SE_Interpolation_Type)(3))

#define SE_INTERPTYP_LINEAR

((SE_Interpolation_Type)(4))

#define SE_INTERPTYP_NEAREST_NEIGHBOR

((SE_Interpolation_Type)(5))

#define SE_INTERPTYP_DIAGONALIZATION

((SE_Interpolation_Type)(6))

#define SE_INTERPTYP_OAML_DBDB_SPLINE_FIT

((SE_Interpolation_Type)(7))

#define SE_INTERPTYP_OAML_GDEM_POLYN_DEFORMATION

((SE_Interpolation_Type)(8))

#define SE_INTERPTYP_BICUBIC_SPLINE

((SE_Interpolation_Type)(9))

#define SE_INTERPTYP_KRIGING

((SE_Interpolation_Type)(10))

#define SE_INTERPTYP_LEGRANGIAN

((SE_Interpolation_Type)(11))

#define SE_INTERPTYP_QUADRATIC

((SE_Interpolation_Type)(12))

 

 

SE_Keyword_Type_Code

Abstract Data Type:         Keyword_Type_Code

typedef SE_Short_Integer   SE_Keyword_Type_Code;

#define SE_KEYTYPCODE_PLACE

((SE_Keyword_Type_Code)(1))

#define SE_KEYTYPCODE_THEME

((SE_Keyword_Type_Code)(2))

#define SE_KEYTYPCODE_DISCIPLINE

((SE_Keyword_Type_Code)(3))

#define SE_KEYTYPCODE_TEMPORAL

((SE_Keyword_Type_Code)(4))

#define SE_KEYTYPCODE_STRATUM

((SE_Keyowrd_Type_Code)(5))

#define SE_KEYTYPCODE_OTHER

((SE_Keyword_Type_Code)(6))

 

 

SE_LOD_Data_Type

Abstract Data Type:         LOD_Data_Type

typedef SE_Short_Integer   SE_LOD_Data_Type;

#define SE_LODDATTYP_DISTANCE

((SE_LOD_Data_Type)(1))

#define SE_LODDATTYP_INDEX

((SE_LOD_Data_Type)(2))

#define SE_LODDATTYP_MAP_SCALE

((SE_LOD_Data_Type)(3))

#define SE_LODDATTYP_VOLUME

((SE_LOD_Data_Type)(4))

#define SE_LODDATTYP_SPATIAL_RESOLUTION

((SE_LOD_Data_Type)(5))

 

 

SE_Lookup_Signature

Abstract Data Type:         Lookup_Signature

typedef SE_Short_Integer   SE_Lookup_Signature;

#define SE_LOOKUPSIG_I

((SE_Lookup_Signature)(1))

#define SE_LOOKUPSIG_IA

((SE_Lookup_Signature)(2))

#define SE_LOOKUPSIG_A

((SE_Lookup_Signature)(3))

#define SE_LOOKUPSIG_RGB

((SE_Lookup_Signature)(4))

#define SE_LOOKUPSIG_RGB_ALPHA

((SE_Lookup_Signature)(5))

 

 

SE_Lookup_Type

Abstract Data Type:         Lookup_Type

typedef SE_Short_Integer   SE_Lookup_Type;

#define SE_LOOKUPTYP_YIQ_TO_RGB

((SE_Lookup_Type)(1))

#define SE_LOOKUPTYP_YIQ_TO_ALPHA

((SE_Lookup_Type)(2))

#define SE_LOOKUPTYP_I_TO_I

((SE_Lookup_Type)(3))

#define SE_LOOKUPTYP_I_TO_ALPHA

((SE_Lookup_Type)(4))

#define SE_LOOKUPTYP_I_TO_IA

((SE_Lookup_Type)(5))

#define SE_LOOKUPTYP_IA_TO_IA

((SE_Lookup_Type)(6))

#define SE_LOOKUPTYP_I_TO_RGB

((SE_Lookup_Type)(7))

#define SE_LOOKUPTYP_RGB_TO_RGB

((SE_Lookup_Type)(8))

#define SE_LOOKUPTYP_I_TO_RGBA

((SE_Lookup_Type)(9))

#define SE_LOOKUPTYP_IA_TO_RGBA

((SE_Lookup_Type)(10))

#define SE_LOOKUPTYP_RGB_TO_RGBA

((SE_Lookup_Type)(11))

#define SE_LOOKUPTYP_RGBA_TO_RGBA

((SE_Lookup_Type)(12))

 

 

SE_Media_Format

typedef SE_Short_Integer   SE_Media_Format;

#define SE_MEDIAFMT_AVI

((SE_Media_Format)(1))

#define SE_MEDIAFMT_BMP

((SE_Media_Format)(2))

#define SE_MEDIAFMT_GIF

((SE_Media_Format)(3))

#define SE_MEDIAFMT_JPEG

((SE_Media_Format)(4))

#define SE_MEDIAFMT_HTML

((SE_Media_Format)(5))

#define SE_MEDIAFMT_RIFF

((SE_Media_Format)(6))

#define SE_MEDIAFMT_RGB

((SE_Media_Format)(7))

#define SE_MEDIAFMT_PNG

((SE_Media_Format)(8))

#define SE_MEDIAFMT_QT

((SE_Media_Format)(9))

#define SE_MEDIAFMT_TIFF

((SE_Media_Format)(10))

#define SE_MEDIAFMT_WMF

((SE_Media_Format)(11))

#define SE_MEDIAFMT_XBM

((SE_Media_Format)(12))

#define SE_MEDIAFMT_PICT

((SE_Media_Format)(13))

#define SE_MEDIAFMT_NITFS

((SE_Media_Format)(14))

#define SE_MEDIAFMT_BIIF

((SE_Media_Format)(15))

#define SE_MEDIAFMT_CGM

((SE_Media_Format)(16))

#define SE_MEDIAFMT_JPEG_2000

((SE_Media_Format)(17))

#define SE_MEDIAFMT_SVG

((SE_Media_Format)(18))

 

 

SE_Ordering_Reason

Abstract Data Type:         Ordering_Reason

typedef SE_Short_Integer   SE_Ordering_Reason;

#define SE_ORDREAS_LAYERED_HIGH_QUALITY_RENDERING

((SE_Ordering_Reason)(1))

#define SE_ORDREAS_LAYERED_FASTEST_RENDERING

((SE_Ordering_Reason)(2))

#define SE_ORDREAS_FIXED_LISTED

((SE_Ordering_Reason)(3))

#define SE_ORDREAS_VIEWER_RANGE

((SE_Ordering_Reason)(4))

#define SE_ORDREAS_SHARED_ATTRIBUTE

((SE_Ordering_Reason)(5))

#define SE_ORDREAS_NONE

((SE_Ordering_Reason)(6))

 

 

SE_Pixel_Fill_Method

Abstract Data Type:         Pixel_Fill_Method

typedef SE_Short_Integer   SE_Pixel_Fill_Method;

#define SE_PIXFILLMETH_CONSTANT

((SE_Pixel_Fill_Method)(1))

#define SE_PIXFILLMETH_BLEND

((SE_Pixel_Fill_Method)(2))

 

 

SE_Predefined_Function

Abstract Data Type:         Predefined_Function

typedef SE_Short_Integer   SE_Predefined_Function;

#define SE_PREDEFFN_ADD

((SE_Predefined_Function)(1))

#define SE_PREDEFFN_DIVIDE

((SE_Predefined_Function)(2))

#define SE_PREDEFFN_MODULO

((SE_Predefined_Function)(3))

#define SE_PREDEFFN_MULTIPLY

((SE_Predefined_Function)(4))

#define SE_PREDEFFN_SUBTRACT

((SE_Predefined_Function)(5))

#define SE_PREDEFFN_COSINE

((SE_Predefined_Function)(6))

#define SE_PREDEFFN_SINE

((SE_Predefined_Function)(7))

#define SE_PREDEFFN_TANGENT

((SE_Predefined_Function)(8))

#define SE_PREDEFFN_ARCCOSINE

((SE_Predefined_Function)(9))

#define SE_PREDEFFN_ARCSINE

((SE_Predefined_Function)(10))

#define SE_PREDEFFN_ARCTANGENT

((SE_Predefined_Function)(11))

#define SE_PREDEFFN_ARCTANGENT2

((SE_Predefined_Function)(12))

#define SE_PREDEFFN_HYPOTENUSE

((SE_Predefined_Function)(13))

#define SE_PREDEFFN_ABSOLUTE

((SE_Predefined_Function)(14))

#define SE_PREDEFFN_EXPONENT

((SE_Predefined_Function)(15))

#define SE_PREDEFFN_LN

((SE_Predefined_Function)(16))

#define SE_PREDEFFN_LOG

((SE_Predefined_Function)(17))

#define SE_PREDEFFN_POWER

((SE_Predefined_Function)(18))

#define SE_PREDEFFN_SQRT

((SE_Predefined_Function)(19))

#define SE_PREDEFFN_MAXIMUM

((SE_Predefined_Function)(20))

#define SE_PREDEFFN_MINIMUM

((SE_Predefined_Function)(21))

#define SE_PREDEFFN_NOT

((SE_Predefined_Function)(22))

#define SE_PREDEFFN_AND

((SE_Predefined_Function)(23))

#define SE_PREDEFFN_EQUAL

((SE_Predefined_Function)(24))

#define SE_PREDEFFN_GREATER_THAN

((SE_Predefined_Function)(25))

#define SE_PREDEFFN_GREATER_THAN_OR_EQUAL

((SE_Predefined_Function)(26))

#define SE_PREDEFFN_LESS_THAN

((SE_Predefined_Function)(27))

#define SE_PREDEFFN_LESS_THAN_OR_EQUAL

((SE_Predefined_Function)(28))

#define SE_PREDEFFN_NOT_EQUAL

((SE_Predefined_Function)(29))

#define SE_PREDEFFN_OR

((SE_Predefined_Function)(30))

#define SE_PREDEFFN_EXCLUSIVE_OR

((SE_Predefined_Function)(31))

#define SE_PREDEFFN_IF

((SE_Predefined_Function)(32))

#define SE_PREDEFFN_PI

((SE_Predefined_Function)(33))

#define SE_PREDEFFN_SIMULATION_TIME

((SE_Predefined_Function)(34))

#define SE_PREDEFFN_SIMULATION_UTIME

((SE_Predefined_Function)(35))

#define SE_PREDEFFN_TERRAIN_HEIGHT

((SE_Predefined_Function)(36))

#define SE_PREDEFFN_CYCLE_TIME

((SE_Predefined_Function)(37))

#define SE_PREDEFFN_TABLE_VALUE

((SE_Predefined_Function)(38))

 

 

SE_Property_Data_Value_Type

Abstract Data Type:         Property_Data_Value_Type

typedef SE_Short_Integer   SE_Property_Data_Value_Type;

#define SE_PROPDATVALTYP_BOOLEAN

((SE_Property_Data_Value_Type)(1))

#define SE_PROPDATVALTYP_BYTE

((SE_Property_Data_Value_Type)(2))

#define SE_PROPDATVALTYP_BYTE_POSITIVE

((SE_Property_Data_Value_Type)(3))

#define SE_PROPDATVALTYP_BYPE_UNSIGNED

((SE_Property_Data_Value_Type)(4))

#define SE_PROPDATVALTYP_SHORT_INTEGER

((SE_Property_Data_Value_Type)(5))

#define SE_PROPDATVALTYP_SHORT_INTEGER_POSITIVE

((SE_Property_Data_Value_Type)(6))

#define SE_PROPDATVALTYP_SHORT_INTEGER_UNSIGNED

((SE_Property_Data_Value_Type)(7))

#define SE_PROPDATVALTYP_INTEGER

((SE_Property_Data_Value_Type)(8))

#define SE_PROPDATVALTYP_INTEGER_INTERVAL

((SE_Property_Data_Value_Type)(9))

#define SE_PROPDATVALTYP_INTEGER_POSITIVE

((SE_Property_Data_Value_Type)(10))

#define SE_PROPDATVALTYP_INTEGER_UNSIGNED

((SE_Property_Data_Value_Type)(11))

#define SE_PROPDATVALTYP_INTEGER_UNSIGNED_INTERVAL

((SE_Property_Data_Value_Type)(12))

#define SE_PROPDATVALTYP_FLOAT

((SE_Property_Data_Value_Type)(13))

#define SE_PROPDATVALTYP_FLOAT_INTERVAL

((SE_Property_Data_Value_Type)(14))

#define SE_PROPDATVALTYP_LONG_FLOAT

((SE_Property_Data_Value_Type)(15))

#define SE_PROPDATVALTYP_STRING

((SE_Property_Data_Value_Type)(16))

#define SE_PROPDATVALTYP_DATA_TABLE_COMPONENT_INDEX

((SE_Property_Data_Value_Type)(17))

#define SE_PROPDATVALTYP_DATA_TABLE_LIBRARY_INDEX

((SE_Property_Data_Value_Type)(18))

#define SE_PROPDATVALTYP_ENUMERANT_CODE

((SE_Property_Data_Value_Type)(19))

#define SE_PROPDATVALTYP_METADATA_CODE

((SE_Property_Data_Value_Type)(20))

 

 

SE_Reference_Vector_Type

Abstract Data Type:         Reference_Vector_Type

typedef SE_Short_Integer   SE_Reference_Vector_Type;

#define SE_REFVEC_FACE_NORMAL

((SE_Reference_Vector_Type)(1))

#define SE_REFVEC_RENDERING_NORMAL

((SE_Reference_Vector_Type)(2))

#define SE_REFVEC_LSR_TRANSFORMATION_AXIS

((SE_Reference_Vector_Type)(3))

#define SE_REFVEC_MAJOR_AXIS

((SE_Reference_Vector_Type)(4))

#define SE_REFVEC_MINOR_AXIS

((SE_Reference_Vector_Type)(5))

#define SE_REFVEC_LIGHT_DIRECTION

((SE_Reference_Vector_Type)(6))

#define SE_REFVEC_VERTICAL_AXIS

((SE_Reference_Vector_Type)(7))

#define SE_REFVEC_MOVEMENT_DIRECTION

((SE_Reference_Vector_Type)(8))

#define SE_REFVEC_PARALLELEPIPED_EDGE_DIRECTION

((SE_Reference_Vector_Type)(9))

#define SE_REFVEC_REFLECTIVITY_EMISSIVITY_NORMAL

((SE_Reference_Vector_Type)(10))

#define SE_REFVEC_REFLECTIVITY_EMISSIVITY_AZIMUTH

((SE_Reference_Vector_Type)(11))

#define SE_REFVEC_REFLECTIVITY_NORMAL

((SE_Reference_Vector_Type)(12))

#define SE_REFVEC_REFLECTIVITY_AZIMUTH

((SE_Reference_Vector_Type)(13))

#define SE_REFVEC_EMISSIVITY_NORMAL

((SE_Reference_Vector_Type)(14))

#define SE_REFVEC_EMISSIVITY_AZIMUTH

((SE_Reference_Vector_Type)(15))

#define SE_REFVEC_CAMERA_FORWARD_AXIS

((SE_Reference_Vector_Type)(16))

#define SE_REFVEC_CAMERA_UP_AXIS

((SE_Reference_Vector_Type)(17))

 

 

SE_Search_Quality

Abstract Data Type:         Search_Quality

typedef SE_Short_Integer   SE_Search_Quality;

#define SE_SEARCHQUAL_POINT

((SE_Search_Quality)(1))

#define SE_SEARCHQUAL_BOUNDING_BOX

((SE_Search_Quality)(2))

#define SE_SEARCHQUAL_EXACT

((SE_Search_Quality)(3))

 

 

SE_Search_Rule_Type

Abstract Data Type:         Search_Rule_Type

typedef SE_Short_Integer   SE_Search_Rule_Type;

#define SE_SEARCHRULETYP_END

((SE_Search_Rule_Type)(1))

#define SE_SEARCHRULETYP_AND

((SE_Search_Rule_Type)(2))

#define SE_SEARCHRULETYP_OR

((SE_Search_Rule_Type)(3))

#define SE_SEARCHRULETYP_NOT

((SE_Search_Rule_Type)(4))

#define SE_SEARCHRULETYP_OBJECT_AND

((SE_Search_Rule_Type)(5))

#define SE_SEARCHRULETYP_PREDICATE

((SE_Search_Rule_Type)(6))

#define SE_SEARCHRULETYP_DRM_CLASS

((SE_Search_Rule_Type)(7))

#define SE_SEARCHRULETYP_FIELD

((SE_Search_Rule_Type)(8))

#define SE_SEARCHRULETYP_FIELD_RANGE

((SE_Search_Rule_Type)(9))

#define SE_SEARCHRULETYP_FIELD_ARRAY

((SE_Search_Rule_Type)(10))

#define SE_SEARCHRULETYP_COMPONENT_DRM_CLASS

((SE_Search_Rule_Type)(11))

#define SE_SEARCHRULETYP_COMPONENT_FIELD

((SE_Search_Rule_Type)(12))

#define SE_SEARCHRULETYP_COMPONENT_FIELD_RANGE

((SE_Search_Rule_Type)(13))

#define SE_SEARCHRULETYP_COMPONENT_FIELD_ARRAY

((SE_Search_Rule_Type)(14))

#define SE_SEARCHRULETYP_ASSOCIATION

((SE_Search_Rule_Type)(15))

#define SE_SEARCHRULETYP_ASSOCIATION_DRM_CLASS

((SE_Search_Rule_Type)(16))

#define SE_SEARCHRULETYP_MAX_SEARCH_DEPTH

((SE_Search_Rule_Type)(17))

 

 

SE_Search_Value_Type

Abstract Data Type:         Search_Value_Type

typedef SE_Short_Integer   SE_Search_Value_Type;

#define SE_SEARCHVALTYP_BOOLEAN

((SE_Search_Value_Type)(1))

#define SE_SEARCHVALTYP_BYTE

((SE_Search_Value_Type)(2))

#define SE_SEARCHVALTYP_BYTE_POSITIVE

((SE_Search_Value_Type)(3))

#define SE_SEARCHVALTYP_BYTE_UNSIGNED

((SE_Search_Value_Type)(4))

#define SE_SEARCHVALTYP_SHORT_INTEGETR

((SE_Search_Value_Type)(5))

#define SE_SEARCHVALTYP_SHORT_INTEGER_POSITIVE

((SE_Search_Value_Type)(6))

#define SE_SEARCHVALTYP_SHORT_INTEGER_UNSIGNED

((SE_Search_Value_Type)(7))

#define SE_SEARCHVALTYP_INTEGER

((SE_Search_Value_Type)(8))

#define SE_SEARCHVALTYP_INTEGER_POSITIVE

((SE_Search_Value_Type)(9))

#define SE_SEARCHVALTYP_INTEGER_UNSIGNED

((SE_Search_Value_Type)(10))

#define SE_SEARCHVALTYP_FLOAT

((SE_Search_Value_Type)(11))

#define SE_SEARCHVALTYP_LONG_FLOAT

((SE_Search_Value_Type)(12))

#define SE_SEARCHVALTYP_ENUMERATED

((SE_Search_Value_Type)(13))

#define SE_SEARCHVALTYP_ID

((SE_Search_Value_Type)(14))

#define SE_SEARCHVALTYP_STRING

((SE_Search_Value_Type)(15))

#define SE_SEARCHVALTYP_SEDRIS_OBJECT

((SE_Search_Value_Type)(16))

#define SE_SEARCHVALTYP_EDCS_ATTRIBUTE_CODE

((SE_Search_Value_Type)(17))

#define SE_SEARCHVALTYP_EDCS_CLASSIFICATION_CODE

((SE_Search_Value_Type)(18))

 

 

SE_Security_Restriction_Type

Abstract Data Type:         Security_Restriction_Type

typedef SE_Short_Integer   SE_Security_Restriction_Type;

#define SE_SECRESTYP_COPYRIGHT

((SE_Security_Restriction_Type)(1))

#define SE_SECRESTYP_PATENT

((SE_Security_Restriction_Type)(2))

#define SE_SECRESTYP_PATENT_PENDING

((SE_Security_Restriction_Type)(3))

#define SE_SECRESTYP_TRADEMARK

((SE_Security_Restriction_Type)(4))

#define SE_SECRESTYP_LICENSE

((SE_Security_Restriction_Type)(5))

#define SE_SECRESTYP_INTELLECTUAL_PROPERTY_RIGHTS

((SE_Security_Restriction_Type)(6))

#define SE_SECRESTYP_OTHER_RESTRICTIONS

((SE_Security_Restriction_Type)(7))

 

 

SE_Shading_Method

Abstract Data Type:         Shading_Method

typedef SE_Short_Integer   SE_Shading_Method;

#define SE_SHADMETH_NONE

((SE_Shading_Method)(1))

#define SE_SHADMETH_FLAT

((SE_Shading_Method)(2))

#define SE_SHADMETH_INTERPOLATED_COLOUR

((SE_Shading_Method)(3))

#define SE_SHADMETH_INTERPOLATED_NORMAL

((SE_Shading_Method)(4))

 

 

SE_Sound_Format

Abstract Data Type:         Sound_Format

typedef SE_Short_Integer   SE_Sound_Format;

#define SE_SOUNDFMT_AIFC

((SE_Sound_Format)(1))

#define SE_SOUNDFMT_AIFF

((SE_Sound_Format)(2))

#define SE_SOUNDFMT_AVI

((SE_Sound_Format)(3))

#define SE_SOUNDFMT_IFF

((SE_Sound_Format)(4))

#define SE_SOUNDFMT_MIDI

((SE_Sound_Format)(5))

#define SE_SOUNDFMT_MP2

((SE_Sound_Format)(6))

#define SE_SOUNDFMT_MP3

((SE_Sound_Format)(7))

#define SE_SOUNDFMT_MPG

((SE_Sound_Format)(8))

#define SE_SOUNDFMT_QT

((SE_Sound_Format)(9))

#define SE_SOUNDFMT_RA

((SE_Sound_Format)(10))

#define SE_SOUNDFMT_SND

((SE_Sound_Format)(11))

#define SE_SOUNDFMT_VOC

((SE_Sound_Format)(12))

#define SE_SOUNDFMT_WAV

((SE_Sound_Format)(13))

#define SE_SOUNDFMT_WVE

((SE_Sound_Format)(14))

 

 

SE_Spacing_Type

Abstract Data Type:         Spacing_Type

typedef SE_Short_Integer   SE_Spacing_Type;

#define SE_SPACTYP_ARITHMETIC

((SE_Spacing_Type)(1))

#define SE_SPACTYP_GEOMETRIC

((SE_Spacing_Type)(2))

 

 

SE_Spatial_Index_Spacing_Units

Abstract Data Type:         Spatial_Index_Spacing_Units

typedef SE_Short_Integer   SE_Spatial_Index_Spacing_Units;

#define SE_SISPACUNITS_METRE

((SE_Spatial_Index_Spacing_Units)(1))

#define SE_SISPACUNITS_ARC_SECOND

((SE_Spatial_Index_Spacing_Units)(2))

 

 

SE_Status_Code

Abstract Data Type:         Status_Code

typedef SE_Short_Integer   SE_Status_Code;

#define SE_STATCODE_SUCCESS

((SE_Status_Code)(1))

#define SE_STATCODE_INVALID_OBJECT

((SE_Status_Code)(2))

#define SE_STATCODE_INVALID_REQUIRED_PARAMETER

((SE_Status_Code)(3))

#define SE_STATCODE_NO_OBJECT

((SE_Status_Code)(4))

#define SE_STATCODE_MULTIPLE_OBJECTS

((SE_Status_Code)(5))

#define SE_STATCODE_COORDINATE_OPERATION_FAILURE

((SE_Status_Code)(6))

#define SE_STATCODE_TRANSMITTAL_INACCESSIBLE

((SE_Status_Code)(7))

#define SE_STATCODE_UNRESOLVED_TRANSMITTAL

((SE_Status_Code)(8))

#define SE_STATCODE_INVALID_ACCESS_MODE

((SE_Status_Code)(9))

#define SE_STATCODE_UNSUPPORTED_FORMAT

((SE_Status_Code)(10))

#define SE_STATCODE_INVALID_TRANSMITTAL_NAME

((SE_Status_Code)(11))

#define SE_STATCODE_UNPUBLISHED_OBJECT

((SE_Status_Code)(12))

#define SE_STATCODE_UNRESOLVED_START_OBJECT

((SE_Status_Code)(13))

#define SE_STATCODE_INVALID_OBJECT_LABEL

((SE_Status_Code)(14))

#define SE_STATCODE_DIFFERENT_TRANSMITTAL

((SE_Status_Code)(15))

#define SE_STATCODE_INVALID_TRANSMITTAL

((SE_Status_Code)(16))

#define SE_STATCODE_FAILURE

((SE_Status_Code)(1000))

#define SE_STATCODE_OUT_OF_MEMORY

((SE_Status_Code)(1001))

#define SE_STATCODE_ENUMERATION_VALUE_INVALID

((SE_Status_Code)(2400))

#define SE_STATCODE_STORE_INVALID

((SE_Status_Code)(2401))

 

 

SE_Symbol_Format

Abstract Data Type:         Symbol_Format

typedef SE_Short_Integer   SE_Symbol_Format;

#define SE_SYMBFMT_MONTH

((SE_Symbol_Format)(1))

#define SE_SYMBFMT_SEASON

((SE_Symbol_Format)(2))

#define SE_SYMBFMT_TIME_INTERVAL

((SE_Symbol_Format)(3))

#define SE_SYMBFMT_TIME_OF_DAY

((SE_Symbol_Format)(4))

#define SE_SYMBFMT_TIME_POINT

((SE_Symbol_Format)(5))

 

 

SE_Time_Configuration

Abstract Data Type:         Time_Configuration

typedef SE_Short_Integer   SE_Time_Configuration;

#define SE_TIMECFG_DATE_YMD_AND_TIME_HMS

((SE_Time_Configuration)(1))

#define SE_TIMECFG_DATE_YMD_AND_TIME_HM

((SE_Time_Configuration)(2))

#define SE_TIMECFG_DATE_YMD_AND_TIME_H

((SE_Time_Configuration)(3))

#define SE_TIMECFG_DATE_YMD

((SE_Time_Configuration)(4))

#define SE_TIMECFG_DATE_YD_AND_TIME_HMS

((SE_Time_Configuration)(5))

#define SE_TIMECFG_DATE_YD_AND_TIME_HM

((SE_Time_Configuration)(6))

#define SE_TIMECFG_DATE_YD_AND_TIME_H

((SE_Time_Configuration)(7))

#define SE_TIMECFG_DATE_YD

((SE_Time_Configuration)(8))

#define SE_TIMECFG_DATE_Y

((SE_Time_Configuration)(9))

#define SE_TIMECFG_DATE_M

((SE_Time_Configuration)(10))

#define SE_TIMECFG_DAY_OF_YEAR

((SE_Time_Configuration)(11))

 

 

SE_Time_Data_Type

Abstract Data Type:         Time_Data_Type

typedef SE_Short_Integer   SE_Time_Data_Type;

#define SE_TIMEDATTYP_MONTH

((SE_Time_Data_Type)(1))

#define SE_TIMEDATTYP_SEASON

((SE_Time_Data_Type)(2))

#define SE_TIMEDATTYP_TIME_INTERVAL

((SE_Time_Data_Type)(3))

#define SE_TIMEDATTYP_TIME_OF_DAY

((SE_Time_Data_Type)(4))

#define SE_TIMEDATTYP_TIME_POINT

((SE_Time_Data_Type)(5))

 

 

SE_Time_Measurement_Type

Abstract Data Type:         Time_Measurement_Type

typedef SE_Short_Integer   SE_Time_Measurement_Type;

#define SE_TIMEMEASTYP_GMT

((SE_Time_Measurement_Type)(1))

#define SE_TIMEMEASTYP_RELATIVE_TO_EXERCISE_START

((SE_Time_Measurement_Type)(2))

#define SE_TIMEMEASTYP_RELATIVE_TO_REFERENCE_TIME

((SE_Time_Measurement_Type)(3))

 

 

SE_Time_Significance

Abstract Data Type:         Time_Significance

typedef SE_Short_Integer   SE_Time_Significance;

#define SE_TIMESIGNIF_ANALYSIS

((SE_Time_Significance)(1))

#define SE_TIMESIGNIF_CERTIFICATION_DATE

((SE_Time_Significance)(2))

#define SE_TIMESIGNIF_CREATION_DATE

((SE_Time_Significance)(3))

#define SE_TIMESIGNIF_FORECAST

((SE_Time_Significance)(4))

#define SE_TIMESIGNIF_MODIFICATION_DATE

((SE_Time_Significance)(5))

#define SE_TIMESIGNIF_OBSERVATION

((SE_Time_Significance)(6))

#define SE_TIMESIGNIF_OCCURRENCE

((SE_Time_Significance)(7))

#define SE_TIMESIGNIF_PERIOD_OF_CONTENT

((SE_Time_Significance)(8))

#define SE_TIMESIGNIF_PUBLICATION_DATE

((SE_Time_Significance)(9))

#define SE_TIMESIGNIF_REFERENCE

((SE_Time_Significance)(10))

#define SE_TIMESIGNIF_REVISION_DATE

((SE_Time_Significance)(11))

SE_Transmittal_API_Function

Abstract Data Type:         Transmittal_API_Function

typedef SE_Short_Integer   SE_Transmittal_API_Function;

#define SE_APIFN_ADD_ASSOCIATE_RELATIONSHIP

((SE_Transmittal_API_Function)(1))

#define SE_APIFN_ADD_COMPONENT_RELATIONSHIP

((SE_Transmittal_API_Function)(2))

#define SE_APIFN_ADD_SYMBOLIC_ASSOCIATE

((SE_Transmittal_API_Function)(3))

#define SE_APIFN_ADD_SYMBOLIC_COMPONENT

((SE_Transmittal_API_Function)(4))

#define SE_APIFN_ASSIGN_REFERENCE_SYMBOL_TO_OBJECT

((SE_Transmittal_API_Function)(5))

#define SE_APIFN_CLONE_OBJECT

((SE_Transmittal_API_Function)(6))

#define SE_APIFN_CLOSE_TRANSMITTAL

((SE_Transmittal_API_Function)(7))

#define SE_APIFN_COMPARE_OBJECT_IDS

((SE_Transmittal_API_Function)(8))

#define SE_APIFN_CREATE_OBJECT

((SE_Transmittal_API_Function)(9))

#define SE_APIFN_CREATE_REF_SYMB

((SE_Transmittal_API_Function)(10))

#define SE_APIFN_CREATE_REF_SYMB_INTEGER_UNSIGNED

((SE_Transmittal_API_Function)(11))

#define SE_APIFN_CREATE_REF_SYMB_STRING

((SE_Transmittal_API_Function)(12))

#define SE_APIFN_CREATE_REF_SYMB_USER_DATA

((SE_Transmittal_API_Function)(13))

#define SE_APIFN_CREATE_SEARCH_FILTER

((SE_Transmittal_API_Function)(14))

#define SE_APIFN_CREATE_SPATIAL_SEARCH_BOUNDARY

((SE_Transmittal_API_Function)(15))

#define SE_APIFN_DETERMINE_SPATIAL_INCLUSION

((SE_Transmittal_API_Function)(16))

#define SE_APIFN_FREE_ITERATOR

((SE_Transmittal_API_Function)(17))

#define SE_APIFN_FREE_OBJECT

((SE_Transmittal_API_Function)(18))

#define SE_APIFN_FREE_OBJECT_ID

((SE_Transmittal_API_Function)(19))

#define SE_APIFN_FREE_PACKED_HIERARCHY

((SE_Transmittal_API_Function)(20))

#define SE_APIFN_FREE_REFERENCE_SYMBOL

((SE_Transmittal_API_Function)(21))

#define SE_APIFN_FREE_REMAINING_OBJECTS_LIST

((SE_Transmittal_API_Function)(22))

#define \ SE_APIFN_FREE_REMAINING_PACKED_HIERARCHIES_LIST

((SE_Transmittal_API_Function)(23))

#define SE_APIFN_FREE_SEARCH_FILTER

((SE_Transmittal_API_Function)(24))

#define SE_APIFN_FREE_SPATIAL_SEARCH_BOUNDARY

((SE_Transmittal_API_Function)(25))

#define SE_APIFN_FREE_TRANSMITTAL

((SE_Transmittal_API_Function)(26))

#define SE_APIFN_GET_AGGREGATE

((SE_Transmittal_API_Function)(27))

#define SE_APIFN_GET_ASSOCIATE

((SE_Transmittal_API_Function)(28))

#define SE_APIFN_GET_COLOUR_MODEL

((SE_Transmittal_API_Function)(29))

#define SE_APIFN_GET_COMPONENT

((SE_Transmittal_API_Function)(30))

#define SE_APIFN_GET_CONTEXT_TRANSFORMATION

((SE_Transmittal_API_Function)(31))

#define SE_APIFN_GET_DATA_TABLE

((SE_Transmittal_API_Function)(32))

#define SE_APIFN_ELEMENT_OF_DATA_TABLE

((SE_Transmittal_API_Function)(33))

#define SE_APIFN_GET_FIELDS

((SE_Transmittal_API_Function)(34))

#define SE_APIFN_GET_ID_FOR_OBJECT

((SE_Transmittal_API_Function)(35))

#define SE_APIFN_GET_IMAGE_DATA

((SE_Transmittal_API_Function)(36))

#define SE_APIFN_GET_IMPLEMENTATION_IDENTIFIER

((SE_Transmittal_API_Function)(37))

#define SE_APIFN_GET_ITERATION_LENGTH_REMAINING

((SE_Transmittal_API_Function)(38))

#define SE_APIFN_GET_NEXT_OBJECT

((SE_Transmittal_API_Function)(39))

#define SE_APIFN_GET_NTH_ASSOCIATE_OF_DRM_CLASS

((SE_Transmittal_API_Function)(40))

#define SE_APIFN_GET_NTH_COMPONENT_OF_DRM_CLASS

((SE_Transmittal_API_Function)(41))

#define \ SE_APIFN_GET_NUMBER_OF_PATHS_TO_TRANMITTAL_ROOT

((SE_Transmittal_API_Function)(42))

#define SE_APIFN_GET_OBJECT_FOR_ID

((SE_Transmittal_API_Function)(43))

#define SE_APIFN_GET_OBJECT_REFERENCE_COUNT

((SE_Transmittal_API_Function)(44))

#define SE_APIFN_GET_PACKED_DATA_TABLE

((SE_Transmittal_API_Function)(45))

#define SE_APIFN_GET_PACKED_HIERARCHY

((SE_Transmittal_API_Function)(46))

#define SE_APIFN_GET_PUBLISHED_LABELS

((SE_Transmittal_API_Function)(47))

#define SE_APIFN_GET_PUBLISHED_OBJECT_LIST

((SE_Transmittal_API_Function)(48))

#define SE_APIFN_GET_REFERENCED_TRANSMITTAL_LIST

((SE_Transmittal_API_Function)(49))

#define SE_APIFN_GET_REFERENCE_SYMBOL

((SE_Transmittal_API_Function)(50))

#define SE_APIFN_GET_RELATION_COUNTS

((SE_Transmittal_API_Function)(51))

#define SE_APIFN_GET_REMAINING_OBJECTS_LIST

((SE_Transmittal_API_Function)(52))

#define \ SE_APIFN_GET_REMAINING_PACKED_HIERARCHIES_LIST

((SE_Transmittal_API_Function)(53))

#define SE_APIFN_GET_ROOT_OBJECT

((SE_Transmittal_API_Function)(54))

#define SE_APIFN_GET_SORT_KEY

((SE_Transmittal_API_Function)(55))

#define SE_APIFN_GET_SRF_PARAMETERS

((SE_Transmittal_API_Function)(56))

#define SE_APIFN_GET_TRANSMITTAL_FILE

((SE_Transmittal_API_Function)(57))

#define SE_APIFN_GET_TRANSMITTAL_FILE_FROM_ID

((SE_Transmittal_API_Function)(58))

#define SE_APIFN_GET_TRANSMITTAL_FILE_FROM_OBJECT

((SE_Transmittal_API_Function)(59))

#define SE_APIFN_GET_TRANSMITTAL_NAME

((SE_Transmittal_API_Function)(60))

#define \ SE_APIFN_GET_TRANSMITTAL_VERSION_INFORMATION

((SE_Transmittal_API_Function)(61))

#define SE_APIFN_GET_UNIQUE_TRANSMITTAL_ID

((SE_Transmittal_API_Function)(62))

#define \ SE_APIFN_GET_UNRESOLVED_OBJECT_FROM_PUBLISHED_LABEL

((SE_Transmittal_API_Function)(63))

#define SE_APIFN_GET_USER_DATA

((SE_Transmittal_API_Function)(64))

#define SE_APIFN_HAS_AGGREGATES

((SE_Transmittal_API_Function)(65))

#define SE_APIFN_HAS_ASSOCIATES

((SE_Transmittal_API_Function)(66))

#define SE_APIFN_HAS_COMPONENTS

((SE_Transmittal_API_Function)(67))

#define SE_APIFN_IDENTIFY_OBJECT

((SE_Transmittal_API_Function)(68))

#define SE_APIFN_INITIALIZE_AGGREGATE_ITERATOR

((SE_Transmittal_API_Function)(69))

#define SE_APIFN_INITIALIZE_ASSOCIATE_ITERATOR

((SE_Transmittal_API_Function)(70))

#define SE_APIFN_INITIALIZE_COMPONENT_ITERATOR

((SE_Transmittal_API_Function)(71))

#define \ SE_APIFN_INITIALIZE_INHERITED_COMPONENT_ITERATOR

((SE_Transmittal_API_Function)(72))

#define SE_APIFN_OBJECT_IDS_SUPPORTED

((SE_Transmittal_API_Function)(73))

#define SE_APIFN_OBJECT_ID_TO_STRING

((SE_Transmittal_API_Function)(74))

#define SE_APIFN_OBJECT_IS_PUBLISHED

((SE_Transmittal_API_Function)(75))

#define SE_APIFN_OBJECT_IS_RESOLVED

((SE_Transmittal_API_Function)(76))

#define SE_APIFN_OBJECTS_ARE_SAME

((SE_Transmittal_API_Function)(77))

#define SE_APIFN_OPEN_TRANSMITTAL_BY_FILE

((SE_Transmittal_API_Function)(78))

#define SE_APIFN_OPEN_TRANSMITTAL_BY_NAME

((SE_Transmittal_API_Function)(79))

#define SE_APIFN_PUBLISH_OBJECT

((SE_Transmittal_API_Function)(80))

#define SE_APIFN_PUT_DATA_TABLE

((SE_Transmittal_API_Function)(81))

#define SE_APIFN_PUT_DATA_TABLE_EXTENT

((SE_Transmittal_API_Function)(82))

#define SE_APIFN_PUT_ELEMENT_OF_DATA_TABLE

((SE_Transmittal_API_Function)(83))

#define SE_APIFN_PUT_ELEMENT_OF_DATA_TABLE_EXTENT

((SE_Transmittal_API_Function)(84))

#define SE_APIFN_PUT_FIELDS

((SE_Transmittal_API_Function)(85))

#define SE_APIFN_PUT_IMAGE_DATA

((SE_Transmittal_API_Function)(86))

#define SE_APIFN_PUT_PACKED_DATA_TABLE

((SE_Transmittal_API_Function)(87))

#define SE_APIFN_PUT_PACKED_DATA_TABLE_EXTENT

((SE_Transmittal_API_Function)(88))

#define SE_APIFN_REMOVE_ASSOCIATE_RELATIONSHIP

((SE_Transmittal_API_Function)(89))

#define SE_APIFN_REMOVE_COMPONENT_RELATIONSHIP

((SE_Transmittal_API_Function)(90))

#define SE_APIFN_REMOVE_FROM_TRANSMITTAL

((SE_Transmittal_API_Function)(91))

#define SE_APIFN_RESOLVE_OBJECT

((SE_Transmittal_API_Function)(92))

#define SE_APIFN_RESOLVE_TRANSMITTAL_NAME

((SE_Transmittal_API_Function)(93))

#define SE_APIFN_SET_COLOUR_MODEL

((SE_Transmittal_API_Function)(94))

#define SE_APIFN_SET_FIRST_ERROR_MESSAGE

((SE_Transmittal_API_Function)(95))

#define SE_APIFN_SET_GENERAL_CALLBACK

((SE_Transmittal_API_Function)(96))

#define \ SE_APIFN_SET_GENERAL_CALLBACK_FOR_ONE_FUNCTION

((SE_Transmittal_API_Function)(97))

#define SE_APIFN_SET_ROOT_OBJECT

((SE_Transmittal_API_Function)(98))

#define SE_APIFN_SET_SECOND_ERROR_MESSAGE

((SE_Transmittal_API_Function)(99))

#define SE_APIFN_SET_SPECIFIC_CALLBACK

((SE_Transmittal_API_Function)(100))

#define SE_APIFN_SET_SRF_PARAMETERS

((SE_Transmittal_API_Function)(101))

#define SE_APIFN_SET_TRANSMITTAL_NAME

((SE_Transmittal_API_Function)(102))

#define SE_APIFN_SET_USER_DATA

((SE_Transmittal_API_Function)(103))

#define SE_APIFN_STRING_TO_OBJECT_ID

((SE_Transmittal_API_Function)(104))

#define SE_APIFN_TRANSMITTALS_ARE_SAME

((SE_Transmittal_API_Function)(105))

#define SE_APIFN_UNPUBLISH_OBJECT

((SE_Transmittal_API_Function)(106))

#define SE_APIFN_USE_DEFAULT_COLOUR_MODEL

((SE_Transmittal_API_Function)(107))

#define SE_APIFN_USE_DEFAULT_SRF_PARAMETERS

((SE_Transmittal_API_Function)(108))

 

 

SE_Traversal_Order

Abstract Data Type:         Traversal_Order

typedef SE_Short_Integer   SE_Traversal_Order;

#define SE_TRAVORDR_BREADTH_FIRST

((SE_Traversal_Order)(1))

#define SE_TRAVORDR_DEPTH_FIRST

((SE_Traversal_Order)(2))

#define SE_TRAVORDR_MOST_EFFICIENT

((SE_Traversal_Order)(3))

 

 

SE_Underline_Style

Abstract Data Type:         Underline_Style

typedef SE_Short_Integer   SE_Underline_Style;

#define SE_ULSTYL_NONE

((SE_Underline_Style)(1))

#define SE_ULSTYL_SINGLE

((SE_Underline_Style)(2))

#define SE_ULSTYL_DOUBLE

((SE_Underline_Style)(3))

#define SE_ULSTYL_BOLD_SINGLE

((SE_Underline_Style)(4))

#define SE_ULSTYL_BOLD_DOUBLE

((SE_Underline_Style)(5))

#define SE_ULSTYL_DASHED

((SE_Underline_Style)(6))

#define SE_ULSTYL_DOTTED

((SE_Underline_Style)(7))

 

 

SE_Unmatched_State_Behaviour

Abstract Data Type:         Unmatched_State_Behaviour

typedef SE_Short_Integer   SE_Unmatched_State_Behaviour;

#define SE_UNMSTATBEH_NONE

((SE_Unmatched_State_Behaviour)(1))

#define SE_UNMSTATBEH_DEFAULT

((SE_Unmatched_State_Behaviour)(2))

#define SE_UNMSTATBEH_ALL

((SE_Unmatched_State_Behaviour)(3))

 

 

SE_Volumetric_Shape

Abstract Data Type:         Volumetric_Shape

typedef SE_Short_Integer   SE_Volumetric_Shape;

#define SE_VOLSHAP_SPHERE

((SE_Volumetric_Shape)(1))

#define SE_VOLSHAP_CYLINDER

((SE_Volumetric_Shape)(2))

#define SE_VOLSHAP_PARALLELEPIPED

((SE_Volumetric_Shape)(3))

 

 

5.2.6    Set data types

SEDRIS “set” data types are bound to the C programming language using a union data type containing both an SE_Integer data type and an bit field structure identifying the members of the union.

SE_Display_Side

Abstract Data Type:         Display_Side

typedef union {

SE_Integer_Unsigned     set;

struct {

SE_Integer_Unsigned SE_DISPSIDE_Front

: 1;

SE_Integer_Unsigned SE_DISPSIDE_Back

: 1;

} member;

} SE_Display_Side;

SE_Display_Style

Abstract Data Type:         Display_Style

typedef union {

SE_Integer_Unsigned     set;

struct {

SE_Integer_Unsigned SE_DISPSTYL_Solid

: 1;

SE_Integer_Unsigned SE_DISPSTYL_Wireframe

: 1;

} member;

} SE_Display_Style;

SE_General_Hierarchy_Order

Abstract Data Type:         General_Hierarchy_Order

typedef union {

SE_Integer_Unsigned     set;

struct {

SE_Integer_Unsigned SE_GHO_AlternateHierarchy

: 1;

SE_Integer_Unsigned SE_GHO_ClassificationRelated

: 1;

SE_Integer_Unsigned SE_GHO_LevelOfDetailRelated

: 1;

SE_Integer_Unsigned SE_GHO_OctTreeRelated

: 1;

SE_Integer_Unsigned SE_GHO_QuadTreeRelated

: 1;

SE_Integer_Unsigned SE_GHO_SeparatingPlane

: 1;

SE_Integer_Unsigned SE_GHO_SpatialIndexRelatedGeneral

: 1;

SE_Integer_Unsigned SE_GHO_StateRelated

: 1;

SE_Integer_Unsigned SE_GHO_TimeRelated

: 1;

} member;

} SE_General_Hierarchy_Order;

SE_Polygon_Flags

Abstract Data Type:         Polygon_Flags

typedef union {

SE_Integer_Unsigned     set;

struct {

SE_Integer_Unsigned SE_PF_Terrain

: 1;

SE_Integer_Unsigned SE_PF_HatTest

: 1;

SE_Integer_Unsigned SE_PF_Collidible

: 1;

SE_Integer_Unsigned SE_PF_ProjectileCollidible

: 1;

SE_Integer_Unsigned SE_PF_BackdropSky

: 1;

SE_Integer_Unsigned SE_PF_BackdropGround

: 1;

SE_Integer_Unsigned SE_PF_Cut

: 1;

SE_Integer_Unsigned SE_PF_Raised

: 1;

SE_Integer_Unsigned SE_PF_Decal

: 1;

SE_Integer_Unsigned SE_PF_Inactive

: 1;

SE_Integer_Unsigned SE_PF_Invisible

: 1;

SE_Integer_Unsigned SE_PF_Footprint

: 1;

SE_Integer_Unsigned SE_PF_Water

: 1;

SE_Integer_Unsigned SE_PF_ClutterEnhanced

: 1;

SE_Integer_Unsigned SE_PF_Shadow

: 1;

SE_Integer_Unsigned SE_PF_SunIlluminated

: 1;

SE_Integer_Unsigned SE_PF_MoonReflection

: 1;

SE_Integer_Unsigned SE_PF_EnableFractal

: 1;

SE_Integer_Unsigned SE_PF_CutImagery

: 1;

SE_Integer_Unsigned SE_PF_VisiblePerimeter

: 1;

SE_Integer_Unsigned SE_PF_VisibleInterior

: 1;

SE_Integer_Unsigned SE_PF_VisibleFloor

: 1;

SE_Integer_Unsigned SE_PF_OpaqueTop

: 1;

SE_Integer_Unsigned SE_PF_LaserRangeFinding

: 1;

SE_Integer_Unsigned SE_PF_Reflective

: 1;

SE_Integer_Unsigned SE_PF_SiteOcculting

: 1;

SE_Integer_Unsigned SE_PF_EnablePolygonRangeBlending

: 1;

SE_Integer_Unsigned SE_PF_EnableFeatureSizeBlending

: 1;

SE_Integer_Unsigned SE_PF_Concave

: 1;

SE_Integer_Unsigned SE_PF_DoNotDrape

: 1;

} member;

} SE_Polygon_Flags;

SE_Presentation_Domain

Abstract Data Type:         Presentation_Domain

typedef union {

SE_Integer_Unsigned     set;

struct {

SE_Integer_Unsigned SE_PD_OTW

: 1;

SE_Integer_Unsigned SE_PD_IRHiBand

: 1;

SE_Integer_Unsigned SE_PD_IRLowBand

: 1;

SE_Integer_Unsigned SE_PD_NVG

: 1;

SE_Integer_Unsigned SE_PD_DayTVColour

: 1;

SE_Integer_Unsigned SE_PD_DayTVBW

: 1;

SE_Integer_Unsigned SE_PD_Radar

: 1;

SE_Integer_Unsigned SE_PD_SAR

: 1;

SE_Integer_Unsigned SE_PD_Thermal

: 1;

SE_Integer_Unsigned SE_PD_LowLightTV

: 1;

} member;

} SE_Presentation_Domain;

5.3    Structured fundamental data types

5.3.1    Introduction

SEDRIS structured fundamental data types are mapped to C array, struct, and union data types or combinations thereof.

5.3.2    Fixed size array data types

Fixed length SEDRIS array data types are mapped directly to C array data types and can be referenced either by using pointer or array notation. For example, a four-element array of data type SE_Float can be declared using either of the two methods:

SE_Float array_name[4];

or

SE_Float *array_name;
array_name = (SE_Float)malloc(4*sizeof(SE_Float));

In either case, references to elements either may use the array index form or may directly use the array name pointer.

This binding only explicitly defines those fixed size array types which are required by either function parameters or data type fields. These are defined below.

SE_Matrix_3x3

Abstract Data Type:         Matrix_3x3

typedef Long_Float SE_Matrix_3x3[3][3];

SE_Matrix_4x4

Abstract Data Type:         Matrix_4x4

typedef Long_Float SE_Matrix_4x4[4][4];

SE_Vector_3

Abstract Data Type:         Vector_3

typedef Long_Float SE_Vector_3[3];

5.3.3    Variable size array data types

Variable length SEDRIS array data types are embedded in C struct data types containing fields for the length of each dimension of the array along with a pointer to a fixed array of the appropriate size. Since arrays can be of varying dimension, the following naming convention is defined. For one-dimensional arrays, the index is called the length. For two-dimensional arrays, the first index is called the length and the second dimension is called the width. For three-dimensional arrays, the first index is referred is called the length, the second dimension is called the width, and the third dimension is called the depth.

To provide a standard naming for the structures which form variable sized array data types, a suffix is attached to each base data type. The suffix is of form “_nD” where n indicates the dimensionality of the variable length array.

This binding only explicitly defines those variable size array types which are required by either function parameters of data type fields. These are defined below.

SE_Animation_Range_1D

Abstract Data Type:         Animation_Range[*]

typedef struct {

SE_Integer_Unsigned

ranges_count;

SE_Animation_Range

*animation_range;

} SE_Animation_Range_1D;

SE_Byte_Unsigned_1D

Abstract Data Type:         Byte_Unsigned[*]

typedef struct {

SE_Integer_Unsigned

length;

SE_Byte_Unsigned

*bytes;

} SE_Byte_Unsigned_1D;

SE_Characters_1D

Abstract Data Type:         Characters[*]

typedef struct {

SE_Integer_Unsigned

length;

SE_Character

*characters;

} SE_Characters_1D;

SE_Classification_Entry_1D

Abstract Data Type:         Classification_Entry[*]

typedef struct {

SE_Integer_Unsigned

length;

SE_Classification_Entry

*classification_entry;

} SE_Classification_Entry_1D;

SE_EDCS_Enumerant_Code_1D

Abstract Data Type:         EDCS_Enumerant_Code[*]

typedef struct {

SE_Integer_Unsigned

length;

EDCS_Enumerant_Code

*code;

} SE_EDCS_Enumerant_Code_1D;

SE_Hierarchy_Data_Fields_1D

Abstract Data Type:         Hierarchy_Data_Fields[*]

typedef struct {

SE_Integer_Unsigned

hierarchy_data_count;

SE_Hierarchy_Data_Fields

*hierarchy_data_array;

} SE_Hierarchy_Data_Fields_1D;

SE_Image_Mip_Extents_1D

Abstract Data Type:         Image_Mip_Extents[*]

typedef struct {

SE_Integer_Unsigned

length;

SE_Image_Mip_Extents

*mip_extents;

} SE_Image_Mip_Extents_1D;

SE_Index_Range_1D

Abstract Data Type:         Index_Range[*]

typedef struct {

SE_Integer_Unsigned

length;

SE_Index_Range

*index_range;

} SE_Index_Range_1D;

SE_Integer_Positive_1D

Abstract Data Type:         Integer_Positive[*]

typedef struct {

SE_Integer_Unsigned

length;

SE_Integer_Positive

*values;

} SE_Integer_Positive_1D;

SE_Keyword_Structure_1D

Abstract Data Type:         Keyword_Structure[*]

typedef struct {

SE_Integer_Unsigned

length;

SE_Keyword_Structure

*keyword_structure;

} SE_Keyword_Structure_1D;

SE_LOD_Entry_1D

Abstract Data Type:         LOD_Entry[*]

typedef struct {

SE_Integer_Unsigned

length;

SE_LOD_Entry

*lod_entry;

} SE_LOD_Entry_1D;

SE_Object_1D

Abstract Data Type:         Object[*]

typedef struct {

SE_Integer_Unsigned

length;

SE_Object

*object;

} SE_Object_1D;

SE_Oct_Tree_Data_Fields_1D

Abstract Data Type:         Oct_Tree_Data_Fields[*]

typedef struct {

SE_Integer_Unsigned

length;

SE_Oct_Tree_Data_Fields

*fields;

} SE_Oct_Tree_Data_Fields_1D;

SE_Packed_Hierarchy_1D

Abstract Data Type:         Packed_Hiearchy[*]

typedef struct {

SE_Integer_Unsigned

length;

SE_Packed_Hierarchy_Object

*list;

} SE_Packed_Hierarchy_1D;

SE_Packed_Hierarchy_Object_1D

Abstract Data Type:         Packed_Hiearchy_Object[*]

typedef struct {

SE_Integer_Unsigned

length;

SE_Packed_Hierarchy_Object

*list;

} SE_Packed_Hierarchy_Object_1D;

SE_Packed_Hierarchy_Reference_1D

Abstract Data Type:         Packed_Hiearchy_Reference[*]

typedef struct {

SE_Integer_Unsigned

length;

SE_Packed_Hierarchy_Reference

*list;

} SE_Packed_Hierarchy_Reference_1D;

SE_Property_Data_Value_1D

Abstract Data Type:         Property_Data_Value [*]

typedef struct {

SE_Integer_Unsigned

length;

SE_Property_Data_Value

*data_values;

} SE_Property_Data_Value_1D;

SE_Property_Value_Fields_1D

Abstract Data Type:         Property_Value_Fields [*]

typedef struct {

SE_Integer_Unsigned

property_value_count;

SE_Property_Value_Fields

*values;

} SE_Property_Value_Fields_1D;

SE_Reference_Symbol_1D

Abstract Data Type:         ReferenceSymbol[*]

typedef struct {

SE_Integer_Unsigned

length;

SE_Reference_Symbol

*reference_symbols;

} SE_Reference_Symbol_1D;

SE_Remaining_Packed_Hierarchies_List

Abstract Data Type:         Remaining_Packed_Hierarchies_List[*]

typedef struct {

SE_Integer_Unsigned

length;

SE_Packed_Hierarchy

*list;

} SE_Remaining_Packed_Hierarchies_List;

SE_Quad_Tree_Data_Fields_1D

Abstract Data Type:         Quad_Tree_Data_Fields[*]

typedef struct {

SE_Integer_Unsigned

length;

SE_Quad_Tree_Data_Fields

*fields;

} SE_Quad_Tree_Data_Fields_1D;

SE_Search_Rule_1D

Abstract Data Type:         Search_Rule[*]

typedef struct {

SE_Integer_Unsigned

length;

SE_Search_Rule

*values;

} SE_Search_Rule_1D;

SE_Short_Integer_1D

Abstract Data Type:         Short_Integer[*]

typedef struct {

SE_Integer_Unsigned

length;

SE_Short_Integer

*values;

} SE_Short_Integer_1D;

SE_Spatial_Index_Data_Fields_1D

Abstract Data Type:         Spatial_Index_Data_Fields[*]

typedef struct {

SE_Integer_Unsigned

length;

SE_Spatial_Index_Data_Fields

*entries;

} SE_Spatial_Index_Data_Fields_1D;

SE_State_Entry_1D

Abstract Data Type:         State_Entry[*]

typedef struct {

SE_Integer_Unsigned

length;

SE_State_Entry

*entries;

} SE_State_Entry_1D;

SE_Status_Code_1D

Abstract Data Type:         Status_Code[*]

typedef struct {

SE_Integer_Unsigned

length;

SE_Status_Code

*codes;

} SE_Status_Code_1D;

SE_String_1D

Abstract Data Type:         String[*]

typedef struct {

SE_Integer_Unsigned

length;

SE_String

*strings;

} SE_String_1D;

SE_Time_Entry_1D

Abstract Data Type:         Time_Entry[*]

typedef struct {

SE_Integer_Unsigned

length;

SE_Time_Entry

*entries;

} SE_Time_Entry_1D;

5.4    Record data types

SEDRIS record data types are mapped to C struct data types. Such data types may be either invariant or variant. SEDRIS invariant data types are mapped directly to SEDRIS struct data types. SEDRIS variant data types are mapped to a C struct data type containing an enumerated data type and a union data type. The enumerated data type indicates which option within the C union data type defines the structure of the data.

The following data types are defined by this binding. The data types are listed alphabetically.

SE_Absolute_Time_Interval_Entry

Abstract Data Type:         Absolute_Time_Interval_Entry

typedef struct {

SE_Absolute_Time_Point_Fields

reference_time_point;

SE_Absolute_Time_Interval_Fields

absolute_interval;

} SE_Absolute_Time_Interval_Entry;

SE_Absolute_Time_Interval_Fields

Abstract Data Type:         Absolute_Time_Interval_Fields

typedef struct {

SE_Time_Significance

time_significance;

SE_Integer

delta_days;

SE_Byte_Unsigned

delta_hours;

SE_Byte_Unsigned

delta_minutes;

SE_Long_Float

delta_seconds;

} SE_Absolute_Time_Interval_Fields;

SE_Absolute_Time_Point_Fields

Abstract Data Type:         Absolute_Time_Point_Fields

typedef struct {

SE_Time_Significance

time_significance;

SE_Short_Integer

year;

SE_Month

month;

SE_Integer

day;

SE_Byte

hour;

SE_Byte

minutes;

SE_Long_Float

seconds;

} SE_Absolute_Time_Point_Fields;

SE_Access_Fields

Abstract Data Type:         Access_Fields

typedef struct {

SE_Security_Restriction_Type

access_constraints;

SE_Security_Restriction_Type

use_constraints;

SE_Security_Information

security;

} SE_Access_Fields;

SE_Address

Abstract Data Type:         Address

typedef struct {

SE_String

delivery_point;

SE_String

city;

SE_String

administrative_area;

SE_String

postal_code

SE_String

country

} SE_Address;

SE_AEC_Location_3D_Fields

Abstract Data Type:         AEC_Location_3D_Fields

typedef struct {

SRM_AEC_Coordinate_3D

coordinate;

} SE_AEC_Location_3D_Fields;

SE_Aggregate_Feature_Fields

Abstract Data Type:         Aggregate_Feature_Fields

typedef struct {

SE_Boolean

unique_descendant;

SE_Boolean

strict_organizing_principle;

} SE_Aggregate_Feature_Fields;

SE_Aggregate_Geometry_Fields

Abstract Data Type:         Aggregate_Geometry_Fields

typedef struct {

SE_Boolean

unique_descendant;

SE_Boolean

strict_organizing_principle;

} SE_Aggregate_Geometry_Fields;

SE_ALCC_Location_3D_Fields

Abstract Data Type:         ALCC_Location_3D_Fields

typedef struct {

SRM_ALCC_Coordinate_3D

coordinate;

} SE_ALCC_Location_3D_Fields;

SE_Alternate_Hierarchy_Parameters

Abstract Data Type:         Alternate_Hierarchy_Parameters

typedef struct {

SE_Hierarchy_Data_Fields_1D

hierarchy_data_array;

} SE_Alternate_Hierarchy_Parameters;

SE_Alternate_Hierarchy_Related_Features_Fields

Abstract Data Type:         Alternate_Hierarchy_Related_Features_Fields

typedef struct {

SE_Boolean

unique_descendants;

SE_Boolean

strict_organizing_principle;

} SE_Alternate_Hierarchy_Related_Features_Fields;

SE_Alternate_Hierarchy_Related_Geometry_Fields

Abstract Data Type:         Alternate_Hierarchy_Related_Geometry_Fields

typedef struct {

SE_Boolean

unique_descendants;

SE_Boolean

strict_organizing_principle;

} SE_Alternate_Hierarchy_Related_Geometry_Fields;

SE_AM_Location_3D_Fields

Abstract Data Type:         AM_Location_3D_Fields

typedef struct {

SRM_AM_Coordinate_3D

coordinate;

} SE_AM_Location_3D_Fields;

SE_Animation_Behaviour_Fields

Abstract Data Type:         Animation_Behaviour_Fields

typedef struct {

SE_Long_Float

period;

SE_Short_Integer_Unsigned

count;

SE_Boolean

forward_sequence_mode;

SE_Short_Integer_Positive

beginning_frame;

SE_Short_Integer_Positive

ending_frame;

SE_Boolean

random_beginning_frame;

} SE_Animation_Behaviour_Fields;

SE_Animation_Range

Abstract Data Type:         Animation_Range

typedef struct {

SE_Short_Integer_Unsigned

beginning_frame;

SE_Short_Integer_Unsigned

ending_frame;

} SE_Animation_Range;

SE_Animation_Related_Geometry_Fields

Abstract Data Type:         Animation_Related_Geometry_Fields

typedef struct {

SE_Boolean

unique_descendants;

SE_Boolean

strict_organizing_principle;

} SE_Animation_Related_Geometry_Fields;

SE_Animation_Select_Parameters

Abstract Data Type:         Animation_Select_Parameters

typedef struct {

SE_Animation_Range_1D

animation_ranges_array;

} SE_Animation_Select_Parameters;

SE_Any_Enumerated_Or_Selection_Value

Abstract Data Type:         Any_Enumerated_Value

typedef struct {

SE_Enumerated_Or_Selection_Type    selected_enumeration;

union _SE_Any_Enumerated_Or_Selection_Value_Union {

SE_Short_Unsigned_Integer

null_type;

SE_Axis_Alignment

axis_alignment;

SE_Camera_Projection_Type

camera_projection_type;

SE_Colour_Binding

colour_binding;

SE_Colour_Mapping

colour_mapping;

SE_Colour_Model

colour_model;

SE_Display_Side

display_side;

SE_Display_Style

display_style;

SE_Display_Type

display_type;

SE_DRM_Class

drm_class;

SE_Feature_Union_Reason

feature_union_reason;

SE_Grid_Overlap_Operator

grid_overlap_operator;

SE_Image_Component

image_component;

SE_Image_Mapping_Method

image_mapping_method;

SE_Image_Projection_Type

image_projection_type;

SE_Image_Scan_Direction

image_scan_direction;

SE_Image_Scan_Direction_Z

image_scan_direction_z;

SE_Image_Signature

image_signature;

SE_Image_Wrap

image_wrap;

SE_Interpolation_Type

interpolation_type;

SE_LOD_Data_Type

lod_data_type;

SE_Lookup_Signature

lookup_signature;

SE_Lookup_Type

lookup_type;

SE_LSR_Transformation_Axis

lsr_transformation_axis;

SE_Model_Reference_Type

model_reference_type;

SE_Month

month;

SE_Multiplicity_Code

multiplicity_code;

SE_Octant

octant;

SE_Ordering_Reason

ordering_reason;

SE_Pixel_Fill_Method

pixel_fill_method;

SE_Predefined_Function

predefined_function;

SE_Present_In

present_in;

SE_Property_Data_Value_Type

property_data_value_type;

SE_Quadrant

quadrant;

SE_Reference_Vector_Type

reference_vector_type;

SE_Reference_Surface_Elevation_Select

reference_surface_elevation_select;

SE_Reference_Surface_LOD_Select

reference_surface_lod_select;

SE_Season

season;

SE_Shading_Method

shading_method;

SE_Spacing_Type

spacing_type;

SE_Spatial_Index_Spacing_Unit

spatial_index_spacing_unit;

SE_State_Mismatch_Behaviour

state_mismatch_behaviour;

SE_Time_Data_Type

time_data_type;

SE_Time_Of_Day

time_of_day;

SE_Time_Significance

time_significance;

} value

} SE_Any_Enumerated_Or_Selection_Value;

SE_Any_Search_Value

Abstract Data Type:         Any_Search_Value

typedef struct {

SE_Search_Value_Type    type_of_value;

union _SE_Any_Search_Value_Union {

SE_Boolean

boolean_value;

SE_Byte

byte_value;

SE_Short_Integer

short_integer_value;

SE_Integer

integer_value;

SE_Byte_Positive

byte_positive_value;

SE_Short_Integer_Positive

short_integer_positive_value;

SE_Integer_Positive

integer_positive;

SE_Byte_Unsigned

byte_unsigned_value;

SE_Short_Integer_Unsigned

short_integer_unsigned_value;

SE_Integer_Unsigned

integer_unsigned_value;

SE_Float

float_value;

SE_Long_Float

long_float_value;

SE_Any_Enumerated_Or_Selection_Value

any_enumerated_or_selection_value;

SE_String

string_value;

EDCS_Attribute_Code

edcs_attribute_code_value;

EDCS_Classification_Code

edcs_classification_code_value;

} value;

} SE_Any_Search_Value;

SE_AOM_Location_3D_Fields

Abstract Data Type:         AOM_Location_3D_Fields

typedef struct {

SRM_AOM_Coordinate_3D

coordinate;

} SE_AOM_Location_3D_Fields;

SE_APS_Location_3D_Fields

Abstract Data Type:         APS_Location_3D_Fields

typedef struct {

SRM_APS_Coordinate_3D

coordinate;

} SE_APS_Location_3D_Fields;

SE_Arc_Fields

Abstract Data Type:         Arc_Fields

typedef struct {

SE_Short_Integer_Unsigned

count;

SE_Boolean

suppress_last;

} SE_Arc_Fields;

SE_ATM_Location_3D_Fields

Abstract Data Type:         ATM_Location_3D_Fields

typedef struct {

SRM_ATM_Coordinate_3D

coordinate;

} SE_ATM_Location_3D_Fields;

SE_Attribute_Set_Index_Fields

Abstract Data Type:         Attribute_Set_Index_Fields

typedef struct {

SE_Integer_Positive

index;

} SE_Attribute_Set_Index_Fields;

SE_Attribute_Set_Index_Control_Link_Fields

Abstract Data Type:         Attribute_Set_Index_Control_Link_Fields

typedef struct {

SE_String

description;

SE_Integer_Unsigned

expression_index;

} SE_Attribute_Set_Index_Control_Link_Fields;

SE_Attribute_Set_Table_Fields

Abstract Data Type:         Attribute_Set_Table_Fields

typedef struct {

SE_String

table_usage;

SE_Boolean

regular;

} SE_Attribute_Set_Table_Fields;

SE_Attribute_Set_Table_Group_Fields

Abstract Data Type:         Attribute_Set_Table_Group_Fields

typedef struct {

SE_Integer_Unsigned

group_id;

SE_Integer_Positive

primary_table_index;

SE_Integer_Positive

table_size;

} SE_Attribute_Set_Table_Group_Fields;

SE_AUPS_Location_3D_Fields

Abstract Data Type:         AUPS_Location_3D_Fields

typedef struct {

SRM_AUPS_Coordinate_3D

coordinate;

} SE_AUPS_Location_3D_Fields;

SE_AUTM_Location_3D_Fields

Abstract Data Type:         AUTM_Location_3D_Fields

typedef struct {

SRM_AUTM_Coordinate_3D

coordinate;

} SE_AUTM_Location_3D_Fields;

SE_Axis_Fields

Abstract Data Type:         Axis_Fields

typedef struct {

SE_Element_Type

axis_type;

EDCS_Unit_Code

value_unit;

EDCS_Scale_Code

value_scale;

SE_Short_Integer_Positive

axis_value_count;

} SE_Axis_Fields;

SE_Base_Positional_Light_Fields

Abstract Data Type:         Base_Positional_Light_Fields

typedef struct {

SE_Boolean

apply_to_children;

SE_Boolean

override_positional_lights;

SE_Boolean

override_infinite_lights;

SE_Boolean

active_light_value;

SE_Float

radius;

SE_Long_Float

constant_attenuation_factor;

SE_Long_Float

linear_attenuation_factor;

SE_Long_Float

quadratic_attenuation_factor;

} SE_Base_Positiional_Light_Fields;

SE_Base_Reference_Vector_Fields

Abstract Data Type:         Base_Reference_Vector_Fields

typedef struct {

SE_Vector_3

unit_vector;

SE_Reference_Vector_Type

vector_type;

} SE_Base_Reference_Vector_Fields;

SE_Base_Summary_Item_Fields

Abstract Data Type:         Base_Summary_Item_Fields

typedef struct {

SE_DRM_Class

type;

} SE_Base_Summary_Item_Fields;

SE_Base_Time_Data_Fields

Abstract Data Type:         Base_Time_Data_Fields

typedef struct {

SE_Time_Significance

time_significance;

} SE_Base_Time_Data_Fields;

SE_Blend_Directional_Light_Fields

Abstract Data Type:         Blend_Directional_Light_Fields

typedef struct {

SE_Long_Float

upper_plane_angular_offset;

SE_Long_Float

lower_plane_angular_offset;

} SE_Blend_Directional_Light_Fields;

SE_Browse_Media_Fields

Abstract Data Type:         Browse_Media_Fields

typedef struct {

SE_String

name;

SE_URN

media_urn;

SE_String

description;

} SE_Browse_Media_Fields;

SE_Camera_Point_Fields

Abstract Data Type:         Camera_Point_Fields

typedef struct {

SE_Integer_Unsigned

camera_id;

SE_Camera_Projection_Type

projection;

SE_Long_Float

camera_near;

SE_Long_Float

camera_far;

SE_Boolean

use_left_right_bottom_top;

SE_Long_Float

left;

SE_Long_Float

bottom;

SE_Long_Float

top;

SE_Long_Float

right;

SE_Long_Float

horizontal_field_of_view;

SE_Long_Float

aspect_ratio;

} SE_Camera_Point_Fields;

SE_Citation_Fields

Abstract Data Type:         Citation_Fields

typedef struct {

SE_String

title;

SE_String

edition;

SE_Contact_Information

responsible_party;

SE_String

series_name;

SE_String

issue_id;

SE_String

other;

} SE_CitationFields;

SE_Classification_Data_Fields

Abstract Data Type:         Classification_Data_Fields

typedef struct {

EDCS_Classification_Code

tag;

} SE_Classification_Data_Fields;

SE_Classification_Entry

Abstract Data Type:         Classification_Entry

typedef struct {

SE_Classification_Data_Fields

class_data;

SE_Property_Value_Fields_1D

property_value_array;

} SE_Classification_Entry;

SE_Classification_Parameters

Abstract Data Type:         Classification_Parameters

typedef struct {

SE_Classification_Entry_1D

classification_array;

} SE_Classification_Parameters;

SE_Classification_Related_Feature_Fields

Abstract Data Type:         Classification_Related_Feature_Fields

typedef struct {

SE_Boolean

unique_descendants;

SE_Boolean

strict_organizing_principle;

} SE_Classification_Related_Feature_Fields;

SE_Classification_Related_Geometry_Fields

Abstract Data Type:         Classification_Related_Geometry_Fields

typedef struct {

SE_Boolean

unique_descendants;

SE_Boolean

strict_organizing_principle;

} SE_Classification_Related_Goemetry_Fields;

SE_CMY_Colour_Control_Link_Fields

Abstract Data Type:         CMY_Colour_Control_Link_Fields

typedef struct {

SE_String

description;

SE_Integer_Unsigned

cyan_expression_index;

SE_Integer_Unsigned

magenta_expression_index;

SE_Integer_Unsigned

yellow_expression_index;

} SE_CMY_Colour_Control_Link_Fields;

SE_CMY_Colour_Fields

Abstract Data Type:         CMY_Colour _Fields

typedef struct {

SE_CMY_Data

cmy_data;

} SE_CMY_Colour_Fields;

SE_CMY_Data

Abstract Data Type:         CMY_Data

typedef struct {

SE_Long_Float

cyan;

SE_Long_Float

magenta;

SE_Long_Float

yellow;

} SE_CMY_Data;

SE_CMYK_Data

Abstract Data Type:         CMYK_Data

typedef struct {

SE_Long_Float

cyan;

SE_Long_Float

magenta;

SE_Long_Float

yellow;

SE_Long_Float

black;

} SE_CMYK_Data;

SE_Colour_Entry_Table_Fields

Abstract Data Type:         Colour_Entry_Table_Fields

typedef struct {

SE_Integer_Positive

start_index;

} SE_Colour_Entry_Table_Fields;

SE_Colour_Fields

Abstract Data Type:         Colour_Fields

typedef struct {

SE_Colour_Mapping

colour_mapping;

} SE_Colour_Fields;

SE_Colour_Index_Control_Link_Fields

Abstract Data Type:         Colour_Index_Control_Link_Fields

typedef struct {

SE_String

description;

SE_Integer_Unsigned

colour_index;

SE_Integer_Unsigned

intensity_index;

} SE_Colour_Index_Control_Link_Fields;

SE_Colour_Index_Fields

Abstract Data Type:         Colour_Index_Fields

typedef struct {

SE_Colour_Mapping

colour_mapping;

SE_Integer_Positive

index;

SE_Long_Float

intensity_level;

} SE_Colour_Index_Fields;

SE_Colour_Shininess_Fields

Abstract Data Type:         Colour_Shininess_Fields

typedef struct {

SE_Long_Float

shininess;

} SE_Colour_Shininess_Fields;

SE_Colour_Table_Group_Fields

Abstract Data Type:         Colour_Table_Group_Fields

typedef struct {

SE_Integer_Positive

primary_table_index;

SE_Integer_Positive

table_size;

} SE_Colour_Table_Group_Fields;

SE_Cone_Directional_Light_Fields

Abstract Data Type:         Cone_Directional_Light_Fields

typedef struct {

SE_Boolean

has_plane;

SE_Long_Float

plane_angular_offset;

SE_Boolean

use_full_intensity;

SE_Long_Float

minimum_colour_intensity;

SE_Boolean

invisible_behind;

} SE_Cone_Directional_Light_Fields;

SE_Conformal_Behaviour_Fields

Abstract Data Type:         Conformal_Behaviour_Fields

typedef struct {

SE_Boolean

parallel_gravity;

SE_Float

offset_distance;

} SE_Conformal_Behaviour_Fields;

SE_Contact_Information

Abstract Data Type:         Contact_Information

typedef struct {

SE_String

person_name;

SE_String

position_name;

SE_String

organization;

SE_Address

address;

SE_String

voice_phone;

SE_String

fax_phone;

SE_String

tdd_tty_phone;

SE_String

email_address;

SE_String

web_site;

SE_String

hours_of_service;

SE_String

other;

} SE_Contact_Information;

SE_Continuous_LOD_Related_Geometry_Fields

Abstract Data Type:         Continuous_LOD_Related_Geometry_Fields

typedef struct {

SE_Boolean

unique_descendants;

SE_Boolean

strict_organizing_principle;

SE_Boolean

terminating_node;

} SE_Continuous_LOD_Related_Geometry_Fields;

SE_Continuous_LOD_Select_Parameters

Abstract Data Type:         Continuous_LOD_Select_Parameters

typedef struct {

SE_Continuous_LOD_Select_Choice

continous_lod_choice;

} SE_Continuous_LOD_Select_Parameters;

SE_Control_Link_Fields

Abstract Data Type:         Control_Link_Fields

typedef struct {

SE_String

description;

} SE_Control_Link_Fields;

SE_Cross_Reference_Fields

Abstract Data Type:         Cross_Reference_Fields

typedef struct {

SE_String

relationship;

} SE_Cross_Reference_Fields;

SE_Cylindrical_Volume_Extent_Entry

Abstract Data Type:         Cylindrical_Volume_Extent_Entry

typedef struct {

SE_Cylindrical_Volume_Extent_Fields

cylinder;

SE_Reference_Vector_Fields

reference_vectors[2];

} SE_Cylindrical_Volume_Extent_Entry;

SE_Cylindrical_Volume_Extent_Fields

Abstract Data Type:         Cylindrical_Volume_Extent_Fields

typedef struct {

SE_Long_Float

major_axis_radius;

SE_Long_Float

minor_axis_radius;

SE_Long_Float

cylindrical_length;

} SE_Cylindrical_Volume_Extent_Fields;

SE_Data_Quality_Fields

Abstract Data Type:         Data_Quality_Fields

typedef struct {

SE_Boolean

fictional;

SE_String

field_accuracy;

SE_String

logical_consistency;

SE_String

completeness;

SE_String

absolute_horizontal_positional_accuracy;

SE_String

relative_horizontal_positional_accuracy;

SE_String

absolute_vertical_positional_accuracy;

SE_String

relative_vertical_positional_accuracy;

} SE_Data_Quality_Fields;

SE_Data_Table_Extents

Abstract Data Type:         Data_Table_Extents

typedef struct {

SE_Index_Range_1D

axes_bounds;

} SE_Data_Table_Extents;

SE_Description_Fields

Abstract Data Type:         Description_Fields

typedef struct {

SE_String

abstract;

SE_String

purpose;

SE_String

other;

} SE_Description_Fields;

SE_Distance_LOD_Data_Fields

Abstract Data Type:         Distance_LOD_Data_Fields

typedef struct {

SE_Long_Float

minimum_range;

SE_Long_Float

minimum_fade_band;

SE_Long_Float

maximum_range;

SE_Long_Float

maximum_fade_range;

} SE_Distance_LOD_Data_Fields;

SE_DRM_Class_Fields

Abstract Data Type:         DRM_Class_Fields

typedef struct {

SE_DRM_Class     drm_class;

union _SE_DRM_Class_Fields_Union {

SE_Unused_Fields                             unused_fields;

SE_Absolute_Time_Interval_Fields             absolute_time_interval_fields;

SE_Absolute_Time_Point_Fields                absolute_time_point_fields;

SE_Access_Fields                             access_fields;

SE_AEC_Location_3D_Fields                    aec_location_3D_fields;

SE_Aggregate_Feature_Fields                  aggregate_feature_fields;

SE_Aggregate_Geometry_Fields                 aggregate_geometry_fields;

SE_ALCC_Location_3D_Fields                   alcc_location_3D_fields;

SE_Alternate_Hierarchy_Related_Features_Fields
                              alternate_hierarchy_related_features_fields;

SE_Alternate_Hierarchy_Related_Geometry_Fields                                          
                            alternate_hierarchy_related_geometry_fields;

SE_AM_Location_3D_Fields                     am_location_3D_fields;

SE_Animation_Behaviour_Fields                animation_Behaviour_fields;

SE_Animation_Related_Geometry_Fields      animation_related_geometry_fields;

SE_AOM_Location_3D_Fields                    aom_location_3D_fields;

SE_APS_Location_3D_Fields                    aps_location_3D_fields;

SE_Arc_Fields                                arc_fields;

SE_ATM_Location_3D_Fields                    atm_location_3D_fields;

SE_Attribute_Set_Index_Fields                attribute_set_index_fields;

SE_Attribute_Set_Index_Control_Link_Fields
                            attribute_set_index_control_link_fields;

SE_Attribute_Set_Table_Fields                attribute_set_table_fields;

SE_Attribute_Set_Table_Group_Fields      attribute_set_table_group_fields;

SE_AUPS_Location_3D_Fields                   aups_location_3D_fields;

SE_AUTM_Location_3D_Fields                   autm_location_3D_fields;

SE_Axis_Fields;                              axis_fields;

SE_Base_Positional_Light_Fields              base_positional_light_fields;

SE_Base_Reference_Vector_Fields              base_reference_vector_fields;

SE_Base_Summary_Item_Fields                  base_summary_item_fields;

SE_Base_Time_Data_Fields                     base_time_data_fields;

SE_Blend_Directional_Light_Fields            blend_directional_light_fields;

SE_Browse_Media_Fields                       browse_media_fields;

SE_Camera_Point_Fields                       camera_point_fields;

SE_Citation_Fields                           citation_fields;

SE_Classification_Data_Fields                classification_data_fields;

SE_Classification_Related_Features_Fields                                                                        classification_related_features_fields;

SE_Classification_Related_Geometry_Fields                                                                         classification_related_geometry_fields;

SE_CMY_Colour_Fields                         cmy_Colour_fields;

SE_CMY_Colour_Control_Link_Fields            cmy_Colour_control_link_fields;

SE_Colour_Fields                             Colour_fields;

SE_Colour_Entry_Table_Fields                 Colour_entry_table_fields;

SE_Colour_Index_Fields                       Colour_index_fields;

SE_Colour_Index_Control_Link_Fields        Colour_index_control_link_fields;

SE_Colour_Shininess_Fields                   Colour_shininess_fields;

SE_Colour_Table_Group_Fields                 Colour_table_group_fields;

SE_Cone_Directional_Light_Fields             cone_directional_light_fields;

SE_Conformal_Behaviour_Fields                conformal_Behaviour_fields;

SE_Continuous_LOD_Related_Geometry_Fields                                                                       continuous_lod_related_geometry_fields;

SE_Control_Link_Fields                       control_link_fields;

SE_Cylindrical_Volume_Extent_Fields       cylindrical_volume_extent_fields;

SE_Data_Quality_Fields                       data_quality_fields;

SE_Description_Fields                        description_fields;

SE_Distance_LOD_Data_Fields                  distance_lod_data_fields;

SE_DRM_Class_Summary_Item_Fields             drm_class_summary_item_fields;

SE_EC_Location_2D_Fields                     ec_location_2D_fields;

SE_EC_Location_3D_Fields                     ec_lcoation_3D_fields;

SE_EDCS_Use_Summary_Item_Fields              edcs_use_summary_item_fields;

SE_Edge_Direction_Fields                     edge_direction_fields;

SE_Ellipse_Fields                            ellipse_fields;

SE_Elliptical_Cylinder_Fields                elliptical_cylinder_fields;

SE_Enumeration_Axis_Fields                   enumeration_axis_fields;

SE_Environment_Root_Fields                   environment_root_fields;

SE_Environmental_Domain_Summary_Fields  environmental_domain_summary_fields;

SE_Face_Direction_Fields                     face_direction_fields;

SE_Fade_Range_Fields                         fade_range_fields;

SE_Feature_Hierarchy_Fields                  feature_hierarchy_fields;

SE_Feature_ID_Fields                         feature_id_fields;

SE_Feature_ID_Control_Link_Fields            feature_id_control_link_fields;

SE_Feature_Topology_Hierarchy_Fields        feature_topology_hierarchy_fields;

SE_Flashing_Light_Behaviour_Fields           flashing_light_behaviour_fields;

SE_Function_Fields                           function_fields;

SE_GC_Location_3D_Fields                     gc_location_3D_fields;

SE_GCS_Location_3D_Fields                    gcs_location_3D_fields;

SE_GD_Location_2D_Fields                     gd_location_2D_fields;

SE_GD_Location_3D_Fields                     gd_location_3D_fields;

SE_GEI_Location_3D_Fields                    gei_location_3D_fields;

SE_Geometry_ID_Fields                        geometry_id_fields;

SE_Geometry_ID_Control_Link_Fields           geometry_id_control_link_fields;

SE_Geometry_Topology_Hierarchy_Fields      geometry_topology_hierarchy_fields;

SE_GM_Location_3D_Fields                     gm_location_3D_fields;

SE_Grid_Overlap_Fields                       grid_overlap_fields;

SE_GSE_Location_3D_Fields                    gse_location_3D_fields;

SE_GSM_Location_3D_Fields                    gsm_location_3D_fields;

SE_Hierarchical_Table_Fields                 hierarchical_table_fields;

SE_Hierarchy_Data                            hierarchy_data_fields;

SE_Hierarchy_Summary_Item_Fields             hierarchy_summary_item_fields;

SE_HSV_Colour_Fields                         hsv_colour_fields;

SE_HSV_Colour_Control_Link_Fields            hsv_colour_control_link_fields;

SE_Image_Fields                              image_fields;

SE_Image_Anchor_Fields                       image_anchor_fields;

SE_Image_Lookup_Fields                       image_lookup_fields;

SE_Image_Mapping_Function_Fields             image_mapping_function_fields;

SE_Index_LOD_Data_Fields                     index_lod_data_fields;

SE_Infinite_Light_Fields                     infinite_light_fields;

SE_Inline_Colour_Fields                      inline_colour_fields;

SE_In_Out_Fields                             in_out_fields;

SE_Interface_Template_Fields                 interface_template_fields;

SE_Interval_Axis_Fields                      interval_axis_fields;

SE_Irregular_Axis_Fields                     irregular_axis_fields;

SE_Keywords_Fields                           keywords_fields;

SE_LCC_Location_2D_Fields                    lcc_location_2D_fields;

SE_LOD_Related_Features_Fields               lod_related_features_fields;

SE_LOD_Related_Geometry_Fields               lod_related_geometry_fields;

SE_Light_Rendering_Properties_Fields     light_rendering_properties_fields;

SE_Light_Rendering_Properties_Control_Link_Fields

                      light_rendering_properties_control_link_fields;

SE_Light_Source_Fields                       light_source_fields;

SE_Light_Source_Control_Link_Fields    light_source_countrol_link_fields; 

SE_Line_Fields                               line_fields;

SE_Lineage_Fields                            lineage_fields;

SE_Linear_Geometry_Fields                    linear_geometry_fields;

SE_Literal_Fields                            literal_fields;

SE_Lobe_Data_Fields                          lobe_data_fields;

SE_Local_4x4_Fields                          local_4x4_fields;

SE_Location_Table_Fields                     location_table_fields;

SE_LSR_Location_2D_Fields                    lsr_location_2D_fields;

SE_LSR_Location_3D_Fields                    lsr_location_3D_fields;

SE_LSR_Location_3D_Control_Link_Fields   lsr_location_3D_control_link_fields;

SE_LTP_Location_2D_Fields                    ltp_location_2D_fields;

SE_LTP_Location_3D_Fields                    ltp_location_3D_fields;

SE_M_Location_2D_Fields                      m_location_2d_fields;

SE_M_Location_3D_Fields                      m_location_3d_fields;

SE_Map_Scale_LOD_Data_Fields                 map_scale_lod_data_fields;

SE_Mesh_Face_Table_Fields                    mesh_face_table_fields;

SE_Model_Fields                              model_fields;

SE_Model_Instance_Template_Index             model_instance_template_index;

SE_Moving_Light_Behaviour_Fields             moving_light_Behaviour_fields;

SE_Oct_Tree_Data_Fields                      oct_tree_data_fields;

SE_Oct_Tree_Related_Features_Fields      oct_tree_related_features_fields;

SE_Oct_Tree_Related_Geometry_Fields      oct_tree_related_geometry_fields;

SE_OM_Location_2D_Fields                     om_location_2D_fields;

SE_Overload_Priority_Index_Fields            overload_priority_index_fields;

SE_Parallelepiped_Volume_Extent_Fields                                                                             parallelepiped_volume_extent_fields;

SE_Patch_Fields                              patch_fields;

SE_Perimeter_Related_Feature_Topology_Fields                                                                perimeter_related_feature_topology_fields;

SE_Perimeter_Related_Features_Fields     perimeter_related_features_fields;

SE_Perimeter_Related_Geometry_Fields     perimeter_related_geometry_fields;

SE_Perimeter_Related_Geometry_Topology_Fields                                                              perimeter_related_geometry_topology_fields;

SE_Point_Of_Contact_Fields                   point_of_contact_fields;

SE_Polygon_Fields                            polygon_fields;

SE_Polygon_Control_Link_Fields               polygon_control_link_fields;

SE_Positional_Light_Fields                   positional_light_fields;

SE_Predefined_Function_Fields                predefined_function_fields;

SE_Presentation_Domain_Fields                presentation_domain_fields;

SE_Primitive_Summary_Item_Fields             primitive_summary_item_fields;

SE_Process_Step_Fields                       process_step_fields;

SE_Property_Fields                           property_fields;

SE_Property_Characteristic_Fields            property_characteristic_fields;

SE_Property_Description_Fields               property_description_fields;

SE_Property_Grid_Fields                      property_grid_fields;

SE_Property_Table_Reference_Fields           property_table_reference_fields;

SE_Property_Table_Reference_Control_Link_Fields
                               property_table_reference_control_link_fields;

SE_Property_Table_Reference_Table_Fields
       property_table_reference_table_fields;

SE_Property_Value_Fields                     property_value_fields;

SE_PS_Location_2D_Fields                     ps_location_2D_fields;

SE_Pseudo_Code_Function_Fields               pseudo_code_function_fields;

SE_Pyramid_Directional_Light_Fields     pyramid_directional_light_fields;

SE_Quad_Tree_Data_Fields                     quad_tree_data_fields;

SE_Quad_Tree_Related_Features_Fields    quad_tree_related_features_fields;

SE_Quad_Tree_Related_Geometry_Fields    quad_tree_related_geometry_fields;

SE_Reference_Origin_Fields                   reference_origin_fields;

SE_Reference_Surface_Fields                  reference_surface_fields;

SE_Reference_Vector_Fields                   reference_vector_fields;

SE_Reference_Vector_Control_Link_Fields                                                                            reference_vector_control_link_fields;

SE_Reference_Vector_Table_Fields             reference_vector_table_fields;

SE_Reference_Vector_With_Location_Index_Fields
                              reference_vector_with_location_index_fields;

SE_Regular_Axis_Fields                       regular_axis_fields;

SE_Relative_Time_Interval_Fields             relative_time_interval_fields;

SE_Relative_Time_Point_Fields                relative_time_point_fields;

SE_Rendering_Priority_Level_Fields           rendering_priority_level_fields;

SE_Rendering_Properties_Fields               rendering_properties_fields;

SE_RGB_Colour_Fields                         rgb_Colour_fields;

SE_RGB_Colour_Control_Link_Fields            rgb_Colour_control_link_fields;

SE_Rotating_Light_Behaviour_Fields           rotating_light_Behaviour_fields;

SE_Rotation_Fields                           rotation_fields;

SE_Rotation_Control_Link_Fields              rotation_control_link_fields;

SE_Scale_Fields                              scale_fields;

SE_Scale_Control_Link_Fields                 scale_control_link_fields;

SE_Season_Fields                             season_fields;

SE_Separating_Plane_Data                     separating_plane_data_fields;

SE_Separating_Plane_Related_Geometry_Fields
                                 separating_plane_related_geometry_fields;

SE_SM_Location_3D_Fields                     sm_location_3D_fields;

SE_Sound_Fields                              sound_fields;

SE_Sound_Instance_Fields                     sound_instance_fields;

SE_Sound_Instance_Control_Link_Fields    sound_instance_control_link_fields;

SE_Source_Fields                             source_fields;

SE_Spatial_Index_Related_Feature_Topology_Fields                                                          spatial_index_related_feature_topology_fields;

SE_Spatial_Index_Related_Features_Fields                                                                         spatial_index_related_features_fields;

SE_Spatal_Index_Related_Geometry_Fields                                                                         spatial_index_related_geometry_fields;

SE_Spatial_Index_Related_Geometry_Topology_Fields                                                       spatial_index_related_geometry_topology_fields;

SE_Spatial_Resolution_LOD_Data_Fields                                                                              spatial_resolution_lod_data_fields;

SE_Spherical_Volume_Extent_Fields            spherical_volume_extent_fields;

SE_Spot_Light_Fields                         spot_light_fields;

SE_SRF_Summary_Fields                        srf_summary_fields;

SE_Stamp_Behaviour_Fields                    stamp_behaviour_fields;

SE_State_Control_Link_Fields                 state_control_link_fields;

SE_State_Data_Fields                         state_data_fields;

SE_State_Related_Features_Fields             state_related_features_fields;

SE_State_Related_Geometry_Fields             state_related_geometry_fields;

SE_Strobing_Light_Behaviour_Fields           strobing_light_Behaviour_fields;

SE_Symbol_Fields                             symbol_fields;

SE_Table_Property_Description_Fields      table_property_description_fields;

SE_Text_Fields                               text_fields;

SE_Texture_Coordinate_Fields                 texture_coordinate_fields;

SE_Texture_Coordinate_Control_Link_Fields

                                     texture_coordinate_control_link_fields;

SE_Texture_Coordinate_Table_Fields           texture_coordinate_table_fields;

SE_Time_Of_Day_Fields                        time_of_day_fields;

SE_Time_Point_Fields                         time_point_fields;

SE_Time_Related_Features_Fields              time_related_features_fields;

SE_Time_Related_Geometry_Fields              time_related_geometry_fields;

SE_TM_Location_2D_Fields                     tm_location_2D_fields;

SE_Translation_Control_Link_Fields           translation_control_link_fields;

SE_Translation_Fields                        translation_fields;

SE_Translucency_Control_Link_Fields       translucency_control_link_fields;

SE_Translucency_Fields                       translucency_fields;

SE_Transmittal_Root_Fields                   transmittal_root_fields;

SE_Transmittal_Summary_Fields                transmittal_summary_fields;

SE_Union_Of_Feature_Topology_Fields      union_of_feature_topology_fields;

SE_Union_Of_Features_Fields                  union_of_features_fields;

SE_Union_Of_Geometry_Fields                  union_of_geometry_fields;

SE_Union_Of_Geoemtry_Hierarchy_Fields      union_of_geometry_hierarchy_fields;

SE_Union_Of_Primitive_Geometry_Fields      union_of_primitive_geometry_fields;

SE_UPS_Location_2D_Fields                    ups_location_2D_fields;

SE_UTM_Location_2D_Fields                    utm_location_2D_fields;

SE_Variable_Fields                           variable_fields;

SE_Vertex_With_Component_Indices_Fields                                                                           vertex_with_component_indices_fields;

SE_Volume_LOD_Data_Fields                    volume_lod_data_fields;

SE_Volume_Light_Behaviour_Fields             volume_light_behaviour_fields;

SE_World_Transformation_Fields               world_transformation_fields;

} fields;

} SE_DRM_Class_Fields;

SE_DRM_Class_Summary_Item_Fields

Abstract Data Type:         DRM_Class_Summary_Item_Fields

typedef struct {

SE_DRM_Class

drm_class;

} SE_DRM_Class_Summary_Item_Fields;

SE_EC_Location_2D_Fields

Abstract Data Type:         EC_Location_2D_Fields

typedef struct {

SRM_EC_Coordinate_2D

coordinate;

} SE_EC_Location_2D_Fields;

SE_EDCS_Use_Summary_Item_Fields

Abstract Data Type:         EDCS_Use_Summary_Item_Fields

typedef struct {

SE_String

description;

} SE_EDCS_Use_Summary_Item_Fields;

SE_Edge_Direction_Fields

Abstract Data Type:         Edge_Direction_Fields

typedef struct {

SE_Boolean

forwards;

} SE_Edge_Direction_Fields;

SE_Element_Type

Abstract Data Type:         Element_Type

typedef struct {  

EDCS_Attribute_Code

attribute;

SE_Index_Code

index;

SE_Variable_Code

variable;

} SE_Element_Type;

SE_Ellipse_Fields

Abstract Data Type:         Ellipse_Fields

typedef struct {

SE_Long_Float

major_axis_length;

SE_Long_Float

minor_axis_length;

} SE_Ellipse_Fields;

SE_Elliptical_Cylinder_Fields

Abstract Data Type:         Elliptical_Cylinder_Fields

typedef struct {

SE_Long_Float

major_axis_length;

SE_Long_Float

minor_axis_length;

SE_Long_Float

cylinder_length;

} SE_Elliptical_Cylinder_Fields;

SE_Enumeration_Axis_Fields

Abstract Data Type:         Enumeration_Axis_Fields

typedef struct {

SE_Element_Type

axis_type;

EDCS_Unit_Code

value_unit;

EDCS_Scale_Code

value_scale;

SE_EDCS_Enumerant_Code_1D

axis_value_array;

} SE_Enumeration_Axis_Fields;

SE_Environment_Root_Fields

Abstract Data Type:         Environment_Root_Fields

typedef struct {

SRM_SRF_Parameters

srf_parameters;

} SE_Environment_Root_Fields;

SE_Environmental_Domain_Fields

Abstract Data Type:         Environmental_Domain_Fields

typedef struct {

EDCS_Classification_Code

environmental_domain;

} SE_Environmental_Domain_Fields;

SE_Face_Direction_Fields

Abstract Data Type:         Face_Direction_Fields

typedef struct {

SE_Boolean

front;

} SE_Face_Direction_Fields;

SE_Fade_Range_Fields

Abstract Data Type:         Fade_Range_Fields

typedef struct {

SE_Long_Float

fade_to_off_begin;

SE_Long_Float

fade_to_off_complete;

} SE_Fade_Range_Fields;

SE_Feature_Hierarchy_Fields

Abstract Data Type:         Feature_Hierarchy_Fields

typedef struct {

SE_Feature_Topology_Level

feature_topology_level;

} SE_Feature_Hierarchy_Fields;

SE_Feature_ID_Fields

Abstract Data Type:         Feature_ID_Fields

typedef struct {

SE_Integer_Unsigned

feature_id;

} SE_Feature_ID_Fields;

SE_Feature_ID_Control_Link_Fields

Abstract Data Type:         Feature_ID_Control_Link_Fields

typedef struct {

SE_String

description;

SE_Integer_Unsigned

expression_index;

} SE_Feature_ID_Control_Link_Fields;

SE_Flashing_Light_Behaviour_Fields

Abstract Data Type:         Flashing_Light_Behaviour_Fields

typedef struct {

SE_Long_Float

period;

SE_Long_Float

delay;

SE_Long_Float

duration;

} SE_Flashing_Light_Behaviour_Fields;

SE_Float_Interval

Abstract Data Type:         Float_Interval

typedef struct {

SE_Interval_Type

type;

EDCS_Float

upper_bound;

EDCS_Float

lower_bound;

} SE_Float_Interval;

SE_GC_Location_3D_Fields

Abstract Data Type:         GC_Location_3D_Fields

typedef struct {

SRM_GC_Coordinate_3D

coordinate;

} SE_GC_Location_3D_Fields;

SE_GCS_Location_3D_Fields

Abstract Data Type:         GCS_Location_3D_Fields

typedef struct {

SRM_GCS_Coordinate_3D

coordinate;

} SE_GCS_Location_3D_Fields;

SE_GD_Location_2D_Fields

Abstract Data Type:         GD_Location_2D_Fields

typedef struct {

SRM_GD_Coordinate_2D

coordinate;

} SE_GD_Location_2D_Fields;

SE_GD_Location_3D_Fields

Abstract Data Type:         GD_Location_3D_Fields

typedef struct {

SRM_GD_Coordinate_3D

coordinate;

} SE_GD_Location_3D_Fields;

SE_GEI_Location_3D_Fields

Abstract Data Type:         GEI_Location_3D_Fields

typedef struct {

SRM_GEI_Coordinate_3D

coordinate;

} SE_GEI_Location_3D_Fields;

SE_General_Hierarchy_Select

Abstract Data Type:         General_Hierarchy_Select

typedef struct {

SE_Hierarchy_Inclusion

alternate_hierarchy;

SE_Hierarchy_Inclusion

animation_related;

SE_Hierarchy_Inclusion

classification_related;

SE_Hierarchy_Inclusion

continuous_lod_related;

SE_Hierarchy_Inclusion

oct_tree_related;

SE_Hierarchy_Inclusion

quad_tree_related;

SE_Hierarchy_Inclusion

separating_plane;

SE_Hierarchy_Inclusion

spatial_index_related;

SE_Hierarchy_Inclusion

state_related;

SE_Hierarchy_Inclusion

lod_related;

SE_Hierarchy_Inclusion

lod_distance_related;

SE_Hierarchy_Inclusion

lod_index_related;

SE_Hierarchy_Inclusion

lod_map_scale_related;

SE_Hierarchy_Inclusion

lod_volume_related;

SE_Hierarchy_Inclusion

lod_spatial_resolution_related;

SE_Boolean

time_related;

SE_Hierarchy_Inclusion

time_related_by_month;

SE_Hierarchy_Inclusion

time_related_by_season;

SE_Hierarchy_Inclusion

time_related_by_time_interval;

SE_Hierarchy_Inclusion

time_related_by_time_of_day;

SE_Hierarchy_Inclusion

time_related_by_time_point;

SE_Boolean

perimeter_related;

SE_Boolean

union_of_features;

SE_Boolean

union_of_geometry_hierarchies;

SE_Boolean

union_of_geometry_primitives;

} SE_General_Hierarchy_Select;

SE_Geometry_ID_Fields

Abstract Data Type:         Geometry_ID_Fields

typedef struct {

SE_Integer_Unsigned

geometry_id;

} SE_Geometry_ID_Fields;

SE_Geometry_ID_Control_Link_Fields

Abstract Data Type:         Geometry_ID_Control_Link_Fields

typedef struct {

SE_String

description;

SE_Integer_Unsigned

expression_index;

} SE_Geometry_ID_Control_Link_Fields;

SE_Geometry_Topology_Hierarchy_Fields

Abstract Data Type:         Geometry_Topology_Hierarchy_Fields

typedef struct {

SE_Geometry_Topology_Level

geometry_topology_level;

} SE_Geometry_Topology_Hierarchy_Fields;

SE_GM_Location_3D_Fields

Abstract Data Type:         GM_Location_3D_Fields

typedef struct {

SRM_GM_Coordinate_3D

coordinate;

} SE_GM_Location_3D_Fields;

SE_Grid_Overlap_Fields

Abstract Data Type:         Grid_Overlap_Fields

typedef struct {

SE_Short_Integer_Positive

overlay_group;

SE_Short_Integer_Unsigned

priority;

SE_Grid_Overlap_Operator

operation;

} SE_Grid_Overlap_Fields;

SE_GSE_Location_3D_Fields

Abstract Data Type:         GSE_Location_3D_Fields

typedef struct {

SRM_GSE_Coordinate_3D

coordinate;

} SE_GSE_Location_3D_Fields;

SE_GSM_Location_3D_Fields

Abstract Data Type:         GSM_Location_3D_Fields

typedef struct {

SRM_GSM_Coordinate_3D

coordinate;

} SE_GSM_Location_3D_Fields;

SE_Hierarchy_Data_Fields

Abstract Data Type:         Hierarchy_Data_Fields

typedef struct {

SE_String

alternate_representation_reason;

} SE_Hierarchy_Data_Fields;

SE_Hierarchy_Order_Parameters

Abstract Data Type:         Hierarchy_Order_Parameters

typedef struct {

SE_General_Hierarchy_Order

general_hierarchy_mask;

SE_Alternate_Hierarchy_Parameters

alternate_hierarchy_traversal_order;

SE_Classification_Parameters

classification_traversal_order;

SE_Sibling_Traversal_Order

lod_traversal_order;

SE_Sibling_Traversal_Order

oct_tree_traversal_order;

SE_Sibling_Traversal_Order

quad_tree_traversall_order;

SE_Sibling_Traversal_Order

separating_plane_traversal_order;

SE_Sibling_Traversal_Order

spatial_index_general_traversal_order;

SE_State_Data_Fields

state_traversal_order;

SE_Sibling_Traversal_Order

time_traversal_order;

} SE_Hierarchy_Order_Parameters;

SE_Hierarchy_Select_Parameters

Abstract Data Type:         Hierarchy_Select_Parameters

typedef struct {

SE_General_Hierarchy_Select

general_hierarchy_mask;

SE_Alternate_Hierarchy_Parameters

alternate_hierarchy_branches;

SE_Animation_Select_Parameters

animation_branches;

SE_Classification_Parameters

classification_branches;

SE_Continuous_LOD_Select_Parameters

continuous_lod_branches;

SE_LOD_Select_Parameters

lod_branches;

SE_Oct_Tree_Select_Parameters

oct_tree_branches;

SE_Quad_Tree_Select_Parameters

quad_tree_branches;

SE_Separating_Plane_Select_Parameters

separating_plane_branches;

SE_Spatial_Index_Parameters

spatial_index_branches;

SE_State_Select_Parameters

state_branches;

SE_Time_Select_Parameters

time_branches;

} SE_Hierarchy_Select_Parameters;

SE_Hierarchy_Summary_Item_Fields

Abstract Data Type:         Hierarchy_Summary_Item_Fields

typedef struct {

SE_DRM_Class

drm_class;

SE_Multiplicity_Code

multiplicity_meaning;

SE_Integer_Unsigned

multiplicity;

} SE_Hierarchy_Summary_Item_Fields;

SE_HSV_Colour_Control_Link_Fields

Abstract Data Type:         HSV_Colour_Control_Link_Fields

typedef struct {

SE_String

description;

SE_Integer_Unsigned

hue_expression_index;

SE_Integer_Unsigned

saturation_expression_index;

SE_Integer_Unsigned

value_expression_index;

} SE_HSV_Colour_Control_Link_Fields;

SE_HSV_Colour_Fields

Abstract Data Type:         HSV_Colour_Fields

typedef struct {

SE_HSV_Data

hsv_data;

} SE_HSV_Colour_Fields;

SE_HSV_Data

Abstract Data Type:         HSV_Data

typedef struct {

SE_Long_Float

hue;

SE_Long_Float

saturation;

SE_Long_Float

value;

} SE_HSV_Data;

SE_Image_Anchor_Fields

Abstract Data Type:         Image_Anchor_Fields

typedef struct {

SRM_SRF_Parameters

srf_parameters;

} SE_Image_Anchor_Fields;

SE_Image_Fields

Abstract Data Type:         Image_Fields

typedef struct {

SE_String

name;

SE_Colour_Model

Colour_model;

SE_Image_Mip_Extents_1D

mip_extents_array;

SE_Image_Signature

image_signature;

SE_Image_Scan_Direction

scan_direction;

SE_Image_Scan_Direction_Z

scan_direction_z;

SE_Image_Component_Type

component_data_type;

SE_Boolean

data_is_little_endian;

SE_Boolean

data_is_3D;

SE_Short_Integer_Unsigned

bits_of_alpha;

SE_Short_Integer_Unsigned

bits_of_luminance;

SE_Short_Integer_Unsigned

bits_of_colour_coordinate_1;

SE_Short_Integer_Unsigned

bits_of_colour_coordinate_2;

SE_Short_Integer_Unsigned

bits_of_colour_coordinate_3;

SE_Short_Integer_Unsigned

bits_of_bump_map_height;

SE_Short_Integer_Unsigned

bits_of_material_1;

SE_Short_Integer_Unsigned

bits_of_material_2;

SE_Short_Integer_Unsigned

bits_of_material_3;

SE_Short_Integer_Unsigned

bits_of_material_2_percentage;

SE_Short_Integer_Unsigned

bits_of_material_3_percentage;

SE_Short_Integer_Unsigned

bits_of_image_index;

SE_Short_Integer_Unsigned

bits_of_bump_map_u;

SE_Short_Integer_Unsigned

bits_of_bump_map_v;

SE_Float

minimum_value_of_alpha;

SE_Float

maximum_value_of_alpha;

SE_Float

minimum_value_of_luminance;

SE_Float

maximum_value_of_luminance;

SE_Float

minimum_value_of_colour_coordinate_1;

SE_Float

maximum_value_of_colour_coordinate_1;

SE_Float

minimum_value_of_colour_coordinate_2;

SE_Float

maximum_value_of_colour_coordinate_2;

SE_Float

minimum_value_of_colour_coordinate_3;

SE_Float

maximum_value_of_colour_coordinate_3;

SE_Float

minimum_value_of_bump_map_height;

SE_Float

maximum_value_of_bump_map_height;

SE_Float

minimum_value_of_bump_map_u;

SE_Float

maximum_value_of_bump_map_u;

SE_Float

minimum_value_of_bump_map_v;

SE_Float

maximum_value_of_bump_map_v;

} SE_Image_Fields;

SE_Image_Lookup_Fields

Abstract Data Type:         Image_Lookup_Fields

typedef struct {

SE_Lookup_Signature

lookup_signature;

SE_Lookup_Type

lookup_type;

SE_Colour_Model

Colour_model;

SE_Short_Integer_Unsigned

bits_of_alpha;

SE_Short_Integer_Unsigned

bits_of_luminance;

SE_Short_Integer_Unsigned

bits_of_colour_coordinate_1;

SE_Short_Integer_Unsigned

bits_of_colour_coordinate_2;

SE_Short_Integer_Unsigned

bits_of_colour_coordinate_3;

SE_Short_Integer_Unsigned

bits_of_bump_map_height;

SE_Short_Integer_Unsigned

bits_of_material1;

SE_Short_Integer_Unsigned

bits_of_material2;

SE_Short_Integer_Unsigned

bits_of_material3;

SE_Short_Integer_Unsigned

bits_of_material2_percentage;

SE_Short_Integer_Unsigned

bits_of_material3_percentage;

SE_Short_Integer_Unsigned

bits_of_image_index;

SE_Short_Integer_Unsigned

bits_of_bump_map_u;

SE_Short_Integer_Unsigned

bits_of_bump_map_v;

SE_Float

minimum_value_of_alpha;

SE_Float

maximum_value_of_alpha;

SE_Float

minimum_value_of_luminance;

SE_Float

maximum_value_of_luminance;

SE_Float

minimum_value_of_colour_coordinate_1;

SE_Float

maximum_value_of_colour_coordinate_1;

SE_Float

minimum_value_of_colour_coordinate_2;

SE_Float

maximum_value_of_colour_coordinate_2;

SE_Float

minimum_value_of_colour_coordinate_3;

SE_Float

maximum_value_of_colour_coordinate_3;

SE_Float

minimum_value_of_bump_map_height;

SE_Float

maximum_value_of_bump_map_height;

SE_Float

minimum_value_of_bump_map_u;

SE_Float

maximum_value_of_bump_map_u;

SE_Float

minimum_value_of_bump_map_v;

SE_Float

maximum_value_of_bump_map_v;

SE_Short_Integer_Unsigned

axis_size;

SE_Short_Integer_Unsigned

axis_count;

} SE_Image_Lookup_Fields;

SE_Image_Mapping_Function_Fields

Abstract Data Type:         Image_Mapping_Function_Fields

typedef struct {

SE_Image_Mapping_Method

image_mapping_method;

SE_Image_Wrap

image_wrap_s;

SE_Image_Wrap

image_wrap_t;

SE_Image_Projection_Type

image_projection_type;

SE_Long_Float

intensity_level;

SE_Long_Float

gain;

SE_Boolean

image_detail_mapping;

} SE_Image_Mapping_Function_Fields;

SE_Image_Mip_Extents

Abstract Data Type:         Image_MIP_Extents

typedef struct {

SE_Integer_Positive

size_horizontal;

SE_Integer_Positive

size_vertical;

SE_Integer_Positive

size_z;

} SE_Image_Mip_Extents;

SE_Image_Texel_Location_3D

Abstract Data Type:         Image_Texel_Location_3D

typedef struct {

SE_Short_Integer_Unsigned

horizontal;

SE_Short_Integer_Unsigned

vertical;

SE_Short_Integer_Unsigned

z;

} SE_Image_Texel_Location_3D;

SE_Index_LOD_Data_Fields

Abstract Data Type:         Index_LOD_Data_Fields

typedef struct {

SE_Integer_Positive

index;

} SE_Index_LOD_Data_Fields;

SE_Index_Range

Abstract Data Type:         Index_Range

typedef struct {

SE_Integer_Unsigned

first_index;

SE_Integer_Unsigned

last_index;

} SE_Index_Range;

SE_Infinite_Light_Fields

Abstract Data Type:         Infinite_Light_Fields

typedef struct {

SE_Boolean

apply_to_children;

SE_Boolean

override_positional_lights;

SE_Boolean

override_infinite_lights;

SE_Boolean

active_light_value;

} SE_Infinite_Light_Fields;

SE_Inline_Colour_Fields

Abstract Data Type:         Inline_Colour_Fields

typedef struct {

SE_Colour_Mapping

colour_mapping;

} SE_Inline_Colour_Fields;

SE_In_Out_Fields

Abstract Data Type:         In_Out_Fields

typedef struct {

SE_Boolean

input;

} SE_In_Out_Fields;

SE_Integer_Interval

Abstract Data Type:         Integer_Interval

typedef struct {

SE_Interval_Type

type

EDCS_Integer

lower_bound;

EDCS_Integer

upper_bound;

} SE_Integer_Interval;

SE_Integer_Unsigned_Interval

Abstract Data Type:         Integer_Unsigned_Interval

typedef struct {

SE_Interval_Type

type

EDCS_Integer_Unsigned

lower_bound;

EDCS_Integer_Unsigned

upper_bound;

} SE_Integer_Unsigned_Interval;

SE_Interface_Template_Fields

Abstract Data Type:         Interface_Template_Fields

typedef struct {

SE_String

description;

} SE_Interface_Template_Fields;

SE_Interval_Axis_Fields

Abstract Data Type:         Interval_Axis_Fields

typedef struct {

SE_Element_Type

axis_type;

EDCS_Unit_Code

value_unit;

EDCS_Scale_Code

value_scale;

SE_Property_Data_Value_1D

axis_interval_value_array;

} SE_Interval_Axis_Fields;

SE_Interval_Axis_Value

Abstract Data Type:         Interval_Axis_Value

typedef struct {

SE_Long_Float

value_minimum;

SE_Long_Float

value_maximum;

} SE_Interval_Axis_Value;

SE_Irregular_Axis_Fields

Abstract Data Type:         Irregular_Axis_Fields

typedef struct {

SE_Element_Type

axis_type;

EDCS_Unit_Code

value_unit;

EDCS_Scale_Code

value_scale;

SE_Property_Data_Value_1D

axis_value_array;

SE_Interpolation_Type

interpolation_type;

} SE_Irregular_Axis_Fields;

SE_Keywords_Fields

Abstract Data Type:         Keywords_Fields

typedef struct {

SE_Keyword_Structure_1D

keyword_array;

} SE_Keywords_Fields;

SE_Keyword_Structure

Abstract Data Type:         Keyword_Structure

typedef struct {

SE_Keyword_Type_Code

code;

SE_String

thesaurus;

SE_String

keyword_list;

} SE_Keyword_Structure;

SE_LCC_Location_2D_Fields

Abstract Data Type:         LCC_Location_2D_Fields

typedef struct {

SRM_LCC_Coordinate_2D

coordinate;

} SE_LCC_Location_2D_Fields;

SE_Light_Rendering_Properties_Control_Link_Fields

Abstract Data Type:         Light_Rendering_Properties_Control_Link_Fields

typedef struct {

SE_String

description;

SE_Integer_Unsigned

active_expression_index;

SE_Integer_Unsigned

candela_value_expression_index;

SE_Integer_Unsigned

lower_candela_value_index;

SE_Integer_Unsigned

upper_candela_value_index;

} SE_Light_Rendering_Properties_Control_Link_Fields;

SE_Light_Rendering_Properties_Fields

Abstract Data Type:         Light_Rendering_Properties_Fields

typedef struct {

SE_Display_Type

display_type;

SE_Long_Float

light_diameter;

SE_Long_Float

light_extinguishing_range;

SE_Boolean

random_area_light;

SE_Boolean

active_light_value;

SE_Long_Float

candela_value;

} SE_Light_Rendering_Properties_Fields;

SE_Light_Source_Control_Link_Fields

Abstract Data Type:         Light_Source_Control_Link_Fields

typedef struct {

SE_String

description;

SE_Integer_Unsigned

expression_index;

} SE_Light_Source_Control_Link_Fields;

SE_Light_Source_Fields

Abstract Data Type:         Light_Source_ Fields

typedef struct {

SE_Boolean

apply_to_children;

SE_Boolean

override_positional_lights;

SE_Boolean

override_infinite_lights;

SE_Boolean

active_light_value;

} SE_Light_Source_Fields;

SE_Linear_Geometry_Fields

Abstract Data Type:         Linear_Geometry_Fields

typedef struct {

SE_Short_Integer_Unsigned

count;

SE_Boolean

suppress_last;

} SE_Linear_Geometry_Fields;

SE_Line_Fields

Abstract Data Type:         Line_Fields

typedef struct {

SE_Short_Integer_Unsigned

count;

SE_Boolean

suppress_last;

} SE_Line_Fields;

SE_Lineage_Fields

Abstract Data Type:         Lineage_Fields

typedef struct {

SE_String

statement;

} SE_Lineage_Fields;

SE_Literal_Fields

Abstract Data Type:         Literal_Fields

typedef struct {

SE_Property_Data_Value

value;

} SE_Literal_Fields;

SE_Lobe_Data_Fields

Abstract Data Type:         Lobe_Data_Fields

typedef struct {

SE_Long_Float

horizontal_width;

SE_Long_Float

vertical_width;

} SE_Lobe_Data_Fields;

SE_Local_4x4_Fields

Abstract Data Type:         Local_4x4_Fields

typedef struct {

SE_Matrix_4x4

matrix;

} SE_Local_4x4_Fields;

SE_Locale

Abstract Data Type:         Locale

typedef struct {

SE_Character_1D

language;

} SE_Locale;

SE_Location_Table_Fields

Abstract Data Type:         Location_Table_Fields

typedef struct {

SE_Integer_Positive

start_index;

} SE_Location_Table_Fields;

SE_LOD_Entry

Abstract Data Type:         LOD_Entry

typedef struct {

SE_LOD_Data_Type  lod_entry_type;

union SE_LOD_Entry_Union {

SE_Distance_LOD_Data_Fields

distance;

SE_Index_Fields

index;

SE_Map_Scale_LOD_Data_Fields

map_scale;

SE_Spatial_Resolution_LOD_Data_Fields

spatial_resolution;

SE_Volume_LOD_Data_Fields

volume;

} fields;

} SE_LOD_Entry;

SE_LOD_Related_Features_Fields

Abstract Data Type:         LOD_Related_Features_Fields

typedef struct {

SE_Boolean

unique_descendants;

SE_Boolean

strict_organizing_principle;

SE_LOD_Data_Type

lod_data_type;

} SE_LOD_Related_Features_Fields;

SE_LOD_Related_Geometry_Fields

Abstract Data Type:         LOD_Related_Geometry_Fields

typedef struct {

SE_Boolean

unique_descendants;

SE_Boolean

strict_organizing_principle;

SE_LOD_Data_Type

lod_data_type;

} SE_LOD_Related_Geometry_Fields;

SE_LOD_Select_Parameters

Abstract Data Type:         LOD_Select_Parameters

typedef struct {

SE_Branch_Range_Matching

matching_rules;

SE_LOD_Entry_1D

lod_entry_array;

} SE_LOD_Select_Parameters;

SE_LSR_Location_2D_Fields

Abstract Data Type:         LSR_Location_2D_Fields

typedef struct {

SRM_LSR_Coordinate_2D

coordinate;

} SE_LSR_Location_2D_Fields;

SE_LSR_Location_3D_Control_Link_Fields

Abstract Data Type:         LSR_Location_3D_Control_Link_Fields

typedef struct {

SE_String

description;

SE_Integer_Unsigned

x_expression_index;

SE_Integer_Unsigned

y_expression_index;

SE_Integer_Unsigned

z_expression_index;

} SE_LSR_Location_3D_Control_Link_Fields;

SE_LSR_Location_3D_Fields

Abstract Data Type:         LSR_Location_3D_Fields

typedef struct {

SRM_LSR_Coordinate_3D

coordinate;

} SE_LSR_Location_3D_Fields;

SE_LTP_Location_2D_Fields

Abstract Data Type:         LTP_Location_2D_Fields

typedef struct {

SRM_LTP_Coordinate_2D

coordinate;

} SE_LTP_Location_2D_Fields;

SE_LTP_Location_3D_Fields

Abstract Data Type:         LTP_Location_3D_Fields

typedef struct {

SRM_LTP_Coordinate_3D

coordinate;

} SE_LTP_Location_3D_Fields;

SE_M_Location_2D_Fields

Abstract Data Type:         M_Location_2D_Fields

typedef struct {

SRM_M_Coordinate_2D

coordinate;

} SE_M_Location_2D_Fields;

SE_Map_Scale_LOD_Data_Fields

Abstract Data Type:         Map_Scale_LOD_Data_Fields

typedef struct {

SE_Long_Float

map_scale;

} SE_Map_Scale_LOD_Data_Fields;

SE_Mesh_Face_Table_Fields

Abstract Data Type:         Mesh_Face_Table_Fields

typedef struct {

SE_Integer_Positive

total_mesh_faces;

SE_Integer_Positive

max_nodes_and_rings;

SE_Boolean

topology_present;

} SE_Mesh_Face_Table_Fields;

SSE_Model_Fields

Abstract Data Type:         Model_Fields

typedef struct {

SE_String

name;

SRM_SRF_Parameters

srf_parameters;

SE_Model_Reference_Type

model_reference_type;

SE_Boolean

dynamic_model_processing;

SE_Boolean

has_units;

SE_Boolean

has_moving_parts;

} SE_Model_Fields;

SE_Model_Instance_Template_Index_Fields

Abstract Data Type:         Model_Instance_Template_Index_Fields

typedef struct {

SE_Integer_Positive

index;

} SE_Model_Instance_Template_Index_Fields;

SE_Moving_Light_Behaviour_Fields

Abstract Data Type:         Moving_Light_Behaviour_Fields

typedef struct {

SE_Long_Float

speed;

SE_Long_Float

delay;

} SE_Moving_Light_Behaviour_Fields;

SE_Oct_Tree_Data_Fields

Abstract Data Type:         Oct_Tree_Data_Fields

typedef struct {

SE_Octant

octant;

} SE_Oct_Tree_Data_Fields;

SE_Oct_Tree_Related_Features_Fields

Abstract Data Type:         Oct_Tree_Related_Features_Fields

typedef struct {

SE_Boolean

unique_descendants;

SE_Boolean

strict_organizing_principle;

} SE_Oct_Tree_Related_Features_Fields;

SE_Oct_Tree_Related_Geometry_Fields

Abstract Data Type:         Oct_Tree_Related_Geometry_Fields

typedef struct {

SE_Boolean

unique_descendants;

SE_Boolean

strict_organizing_principle;

} SE_Oct_Tree_Related_Geometry_Fields;

SE_Oct_Tree_Select_Parameters

Abstract Data Type:         Oct_Tree_Data_Fields

typedef struct {

SE_Oct_Tree_Data_Fields_1D

oct_tree_data_array;

} SE_Oct_Tree_Select_Parameters;

SE_OM_Location_2D_Fields

Abstract Data Type:         OM_Location_2D_Fields

typedef struct {

SRM_OM_Coordinate_2D

coordinate;

} SE_OM_Location_2D_Fields;

SE_Overload_Priority_Index_Fields

Abstract Data Type:         Overload_Priority_Index_Fields

typedef struct {

SE_Short_Integer

overload_priority;

} SE_Overload_Priority_Index_Fields;

SE_Packed_Hierarchy

Abstract Data Type:         Packed_Hierarchy

typedef struct {

SE_Packed_Hierarchy_Object_Access

hierarchy_root_object;

SE_Packed_Hierarchy_Object_1D

object_list;

SE_Packed_Hierarchy_Reference_1D

reference_list;

} SE_Packed_Hierarchy;

SE_Packed_Hierarchy_Object

Abstract Data Type:         Packed_Hierarchy_Object

typedef struct {

SE_Object

this_object;

SE_Boolean

components_included;

SE_Packed_Hierarchy_Reference_1D

components;

SE_Boolean

aggregates_included;

SE_Packed_Hierarchy_Reference_1D

aggregates;

SE_DRM_Class_Fields

fields;

SE_Status_Code

status_code;

} SE_Packed_Hierarchy_Object;

SE_Packed_Hierarchy_Reference

Abstract Data Type:         Packed_Hierarchy_Reference

typedef struct {

SE_Packed_Hierarchy_Object_Access

object;

SE_Packed_Hierarchy_Object_Access

link_object;

} SE_Packed_Hierarchy_Reference;

SE_Parallelepiped_Volume_Extent_Entry

Abstract Data Type:         Parallelepiped_Volume_Extent_Entry

typedef struct {

SE_Parallelepiped_Extent_Fields

parallelepiped;

SE_Reference_Vector_Fields

reference_vectors[3];

} SE_Parallelepiped_Volume_Extent_Entry;

SE_Parallelepiped_Volume_Extent_Fields

Abstract Data Type:         Parallelepiped_Volume_Extent_Fields

typedef struct {

SE_Long_Float

edge_length[3];

} SE_Parallelepiped_Volume_Extent_Fields;

SE_Patch_Fields

Abstract Data Type:         Patch_Fields

typedef struct {

SE_URN

patch_resource;

} SE_Patch_Fields;

SE_Perimeter_Related_Feature_Topology_Fields

Abstract Data Type:         Perimeter_Related_Feature_Topology_Fields

typedef struct {

SE_Feature_Topology_Level

feature_topology_level;

} SE_Perimeter_Related_Feature_Topology_Fields;

SE_Perimeter_Related_Features_Fields

Abstract Data Type:         Perimeter_Related_Features_Fields

typedef struct {

SE_Boolean

unique_descendants;

SE_Boolean

strict_organizing_principle;

} SE_Perimeter_Related_Features_Fields;

SE_Perimeter_Related_Geometry_Fields

Abstract Data Type:         Perimeter_Related_Geometry_Fields

typedef struct {

SE_Boolean

unique_descendants;

SE_Boolean

strict_organizing_principle;

} SE_Perimeter_Related_Geometry_Fields;

SE_Perimeter_Related_Geometry_Topology_Fields

Abstract Data Type:         Perimeter_Related_Geometry_Topology_Fields

typedef struct {

SE_Geometry_Topology_Level

geometry_topology_level;

} SE_Perimeter_Related_Geometry_Topology_Fields;

SE_Point_Of_Contact_Fields

Abstract Data Type:         Point_Of_Contact_Fields

typedef struct {

SE_Contact_Information

point_of_contact;

SE_CI_RoleCode

responsible_party_role;

} SE_Point_Of_Contact_Fields;

SE_Polygon_Control_Link_Fields

Abstract Data Type:         Polygon_Control_Link_Fields

typedef struct {

SE_String

description;

SE_Integer_Unsigned

hat_test_expression_index;

SE_Integer_Unsigned

collidible_expression_index;

SE_Integer_Unsigned

invisible_expression_index;

SE_Integer_Unsigned

laser_range_finding_expression_index;

} SE_Polygon_Control_Link_Fields;

SE_Polygon_Fields

Abstract Data Type:         Polygon_Fields

typedef struct {

SE_Polygon_Flags

polygon_flags;

} SE_Polygon_Fields;

SE_Positional_Light_Fields

Abstract Data Type:         Positional_Light_Fields

typedef struct {

SE_Boolean

apply_to_children;

SE_Boolean

override_positional_lights;

SE_Boolean

override_infinite_lights;

SE_Boolean

active_light_value;

SE_Float

radius;

SE_Long_Float

constant_attenuation_factor;

SE_Long_Float

linear_attenuation_factor;

SE_Long_Float

quadratic_attenuation_factor;

} SE_Positional_Light_Fields;

SE_Predefined_Function_Fields

Abstract Data Type:         Predefined_Function_Fields

typedef struct {

SE_Property_Data_Value_Type

value_type;

SE_Predefined_Function

function;

} SE_Predefined_Function_Fields;

SE_Presentation_Domain_Fields

Abstract Data Type:         Presentation_Domain_Fields

typedef struct {

SE_Presentation_Domain

presentation_domain;

} SE_Presentation_Domain_Fields;

SE_Primitive_Summary_Item_Fields

Abstract Data Type:         Primitive_Summary_Item_Fields

typedef struct {

SE_DRM_Class

drm_class;

SE_Integer_Unsigned

multiplicity;

} SE_Primitive_Summary_Item_Fields;

SE_Process_Step_Fields

Abstract Data Type:         Process_Step_Fields

typedef struct {

SE_String

description;

SE_String

rationale;

} SE_Process_Step_Fields;

SE_Property_Characteristic_Fields

Abstract Data Type:         Property_Characteristic_Fields

typedef struct {

EDCS_Metadata_Code

meaning;

SE_Property_Data_Value

characteristic_value;

} SE_Property_Characteristic_Fields;

SE_Property_Data_Value

Abstract Data Type:         Property_Data_Value

typedef struct {

SE_Property_Data_Value_Type   value_type;

union _SE_Property_Data_Value_Union {

SE_Boolean

boolean_value;

SE_Byte

byte_value;

SE_Byte_Positive

byte_positive_value;

SE_Byte_Unsigned

byte_unsigned_value;

SE_Short_Integer

short_integer_value;

SE_Short_Integer_Positive

short_integer_positive_value;

SE_Short_Integer_Unsigned

short_integer_unsigned_value;

SE_Integer

integer_value;

SE_Integer_Interval

integer_interval_value;

SE_Integer_Positive

integer_positive_value;

SE_Integer_Unsigned

integer_unsigned_value;

SE_Integer_Unsigned_Interval

integer_unsigned_interval_value;

SE_Float

float_value;

SE_Float_Interval

float_interval_value;

SE_Long_Float

long_float_value;

SE_String

string_value;

SE_Integer_Unsigned

dt_component_index_value;

SE_Integer_Unsigned

dt_library_index_value;

EDCS_Integer

edcs_enumerant_code_value;

EDCS_Metadata_Code

edcs_metadata_code_value;

} values;

} SE_Property_Data_Value;

SE_Property_Description_Fields

Abstract Data Type:         Property_Description_Fields

typedef struct {

SE_Element_Type

meaning;

EDCS_Unit_Code

value_unit;

EDCS_Scale_Code

value_scale;

} SE_Property_Description_Fields;

SE_Property_Grid_Fields

Abstract Data Type:         Property_Grid_Fields

typedef struct {

SE_Short_Integer_1D

location_index;

SRM_SRF_Parameters

srf_parameters;

SE_Boolean

data_present;

} SE_Property_Grid_Fields;

SE_Property_Table_Reference_Control_Link_Fields

Abstract Data Type:         Property_Table_Reference_Control_Link_Fields

typedef struct {

SE_String

description;

SE_Integer_Unsigned

expression_index;

} SE_Property_Table_Reference_Control_Link_Fields;

SE_Property_Table_Reference_Fields

Abstract Data Type:         Property_Table_Reference_Fields

typedef struct {

SE_Element_Type

axis_type;

SE_Integer_Unsigned

index_on_axis;

} SE_Property_Table_Reference_Fields;

SE_Property_Table_Reference_Table_Fields

Abstract Data Type:         Property_Table_Reference_Table_Fields

typedef struct {

SE_Integer_Positive

start_index;

} SE_Property_Table_Reference_Table_Fields;

SE_Property_Value_Fields

Abstract Data Type:         Property_Value_Fields

typedef struct {

SE_Element_Type

meaning;

EDCS_Unit_Code

value_unit;

EDCS_Scale_Code

value_scale;

SE_Property_Data_Value

value;

} SE_Property_Value_Fields;

SE_PS_Location_2D_Fields

Abstract Data Type:         PS_Location_2D_Fields

typedef struct {

SRM_PS_Coordinate_2D

coordinate;

} SE_PS_Location_2D_Fields;

SE_Pseudo_Code_Function_Fields

Abstract Data Type:         Pseudo_Code_Function_Fields

typedef struct {

SE_Property_Data_Value_Type

value_type;

SE_String

name;

SE_String

pseudo_code;

} SE_Pseudo_Code_Function_Fields;

SE_Pyramid_Directional_Light_Fields

Abstract Data Type:         Pyramid_Directional_Light_Fields

typedef struct {

SE_Boolean

use_full_intensity;

SE_Long_Float

minimum_colour_intensity;

SE_Boolean

invisible_behind;

} SE_Pyramid_Directional_Light_Fields;

SE_Quad_Tree_Data_Fields

Abstract Data Type:         Quad_Tree_Data_Fields

typedef struct {

SE_Quadrant

quadrant;

} SE_Quad_Tree_Data_Fields;

SE_Quad_Tree_Related_Features_Fields

Abstract Data Type:         Quad_Tree_Related_Features_Fields

typedef struct {

SE_Boolean

unique_descendants;

SE_Boolean

strict_organizing_principle

} SE_Quad_Tree_Related_Features_Fields;

SE_Quad_Tree_Related_Geometry_Fields

Abstract Data Type:         Quad_Tree_Related_Geometry_Fields

typedef struct {

SE_Boolean

unique_descendants;

SE_Boolean

strict_organizing_principle

} SE_Quad_Tree_Related_Geometry_Fields;

SE_Quad_Tree_Select_Parameters

Abstract Data Type:         Quad_Tree_Select_Parameters

typedef struct {

SE_Quad_Tree_Data_Fields_1D

quad_tree_data_array;

} SE_Quad_Tree_Select_Parameters;

SE_Reference_Origin_Fields

Abstract Data Type:         Reference_Origin_Fields

typedef struct {

SRM_SRF_Parameters

srf_parameters;

} SE_Reference_Origin_Fields;

SE_Reference_Surface_Fields

Abstract Data Type:         Reference_Surface_Fields

typedef struct {

EDCS_Classification_Code

classification;

SE_Reference_Surface_Elevation_Select

multiplicity_rule;

SE_Reference_Surface_LOD_Select

lod_rule;

} SE_Reference_Surface_Fields;

SE_Reference_Vector_Control_Link_Fields

Abstract Data Type:         Reference_Vector_Control_Link_Fields

typedef struct {

SE_String

description;

SE_Integer_Unsigned

v0_expression_index;

SE_Integer_Unsigned

v1_expression_index;

SE_Integer_Unsigned

v2_expression_index;

} SE_Reference_Vector_Control_Link_Fields;

SE_Reference_Vector_Fields

Abstract Data Type:         Reference_Vector_Fields

typedef struct {

SE_Vector_3

unit_vector;

SE_Reference_Vector_Type

vector_type;

} SE_Reference_Vector_Fields;

SE_Reference_Vector_With_Control_Index_Fields

Abstract Data Type:         Reference_Vector_With_Control_Index_Fields

typedef struct {

SE_Vector_3

unit_vector;

SE_Reference_Vector_Type

vector_type;

SE_Integer_Unsigned

location_index;

} SE_Reference_Vector_With_Control_Index_Fields;

SE_Reference_Vector_Table_Fields

Abstract Data Type:         Reference_Vector_Table_Fields

typedef struct {

SE_Integer_Positive

start_index;

} SE_Reference_Vector_Table_Fields;

SE_Regular_Axis_Fields

Abstract Data Type:         Regular_Axis_Fields

typedef struct {

SE_Element_Type

axis_type;

EDCS_Unit_Code

value_unit;

EDCS_Scale_Code

value_scale;

SE_Short_Integer_Positive

axis_value_count;

SE_Interpolation_Type

interpolation_type;

SE_Property_Data_Value

first_value;

SE_Property_Data_Value

spacing;

SE_Spacing_Type

spacing_type;

SE_Axis_Alignment

axis_alignment;

} SE_Regular_Axis_Fields;

SE_Relative_Time_Interval_Fields

Abstract Data Type:         Relative_Time_Interval_Fields

typedef struct {

SE_Time_Significance

time_significance;

SE_Integer

delta_start_days;

SE_Integer

delta_stop_days;

SE_Byte_Unsigned

delta_start_hours;

SE_Byte_Unsigned

delta_stop_hours;

SE_Byte_Unsigned

delta_start_minutes;

SE_Byte_Unsigned

delta_stop_minutes;

SE_Long_Float

delta_start_seconds;

SE_Long_Float

delta_stop_seconds;

} SE_Relative_Time_Interval_Fields;

SE_Relative_Time_Point_Fields

Abstract Data Type:         Relative_Time_Point_Fields

typedef struct {

SE_Time_Significance

time_significance;

SE_Integer

delta_days;

SE_Byte_Unsigned

delta_hours;

SE_Byte_Unsigned

delta_minutes;

SE_Long_Float

delta_seconds;

} SE_Relative_Time_Point_Fields;

SE_Relative_To_Absolute_Time_Interval_Entry

Abstract Data Type:         Relative_To_Absolute_Time_Interval_Entry

typedef struct {

SE_Absolute_Time_Point_Fields

reference_time_point;

SE_Relative_Time_Interval_Fields

relative_interval;

} SE_Relative_To_Absolute_Time_Interval_Entry;

SE_Relative_To_Absolute_Time_Point_Entry

Abstract Data Type:         Relative_To_Absolute_Time_Point_Entry

typedef struct {

SE_Absolute_Time_Point_Fields

reference_time_point;

SE_Relative_Time_Point_Fields

relative_time;

} SE_Relative_To_Absolute_Time_Point_Entry;

SE_Remaining_Objects_List

Abstract Data Type:         Remaining_Objects_List

typedef struct {

SE_Object_1D

remaining_objects_list;

SE_Object_1D

remaining_link_objects_list;

SE_Status_Code_1D

object_status_list;

SE_Status_Code_1D

link_object_status_list;

} SE_Remaining_Objects_List;

SE_Remaining_Packed_Hierarchies_List

Abstract Data Type:         Remaining_Packed_Hierarchies_List

typedef struct {

SE_Packed_Hierarchy_1D

hierarchy_list;

} SE_Remaining_Packed_Hierarchies_List;

SE_Rendering_Priority_Level_Fields

Abstract Data Type:         Rendering_Priority_Level_Fields

typedef struct {

SE_Short_Integer_Positive

rendering_group;

SE_Short_Integer

rendering_priority;

} SE_Rendering_Priority_Level_Fields;

SE_Rendering_Properties_Fields

Abstract Data Type:         Rendering_Properties_Fields

typedef struct {

SE_Pixel_Fill_Method

fill_method;

SE_Shading_Method

shading_method;

SE_Colour_Binding

colour_binding;

SE_Display_Style

style;

SE_Display_Side

side;

} SE_Rendering_Properties_Fields;

SE_RGB_Colour_Control_Link_Fields

Abstract Data Type:         RGB_Colour_Control_Link_Fields

typedef struct {

SE_String

description;

SE_Integer_Unsigned

red_expression_index;

SE_Integer_Unsigned

green_expression_index;

SE_Integer_Unsigned

blue_expression_index;

} SE_RGB_Colour_Control_Link_Fields;

SE_RGB_Colour_Fields

Abstract Data Type:         RGB_Colour_Fields

typedef struct {

SE_RGB_Data

rgb_data;

} SE_RGB_Colour_Fields;

SE_RGB_Data

Abstract Data Type:         RGB_Data

typedef struct {

SE_Long_Float

red;

SE_Long_Float

green;

SE_Long_Float

blue;

} SE_RGB_Data;

SE_Rotating_Light_Behaviour_Fields

Abstract Data Type:         Rotating_Light_Behaviour_Fields

typedef struct {

SE_Long_Float

period;

} SE_Rotating_Light_Behaviour_Fields;

SE_Rotation_Control_Link_Fields

Abstract Data Type:         Rotation_Control_Link_Fields

typedef struct {

SE_String

description;

SE_Integer_Unsigned

expression_index;

SE_Integer_Unsigned

lower_expression_index;

SE_Integer_Unsigned

upper_expression_index;

} SE_Rotation_Control_Link_Fields;

SE_Rotation_Data

Abstract Data Type:         Rotation_Data

typedef struct {

SE_Long_Float

ccw_limit;

SE_Long_Float

cw_limit;

} SE_Rotation_Data;

SE_Rotation_Fields

Abstract Data Type:         Rotation_Fields

typedef struct {

SE_LSR_Transformation_Axis

axis;

SE_Long_Float

angle;

} SE_Rotation_Fields;

SE_Scale_Control_Link_Fields

Abstract Data Type:         Scale_Control_Link_Fields

typedef struct {

SE_String

description;

SE_Integer_Unsigned

expression_index;

SE_Integer_Unsigned

lower_expression_index;

SE_Integer_Unsigned

upper_expression_index;

} SE_Scale_Control_Link_Fields;

SE_Scale_Fields

Abstract Data Type:         Scale_Fields

typedef struct {

SE_LSR_Transformation_Axis

axis;

SE_Long_Float

scale_amount;

} SE_Scale_Fields;

SE_Search_Bounds

Abstract Data Type:         Search_Bounds

typedef struct {

SRM_Coordinate

minimum_point;

SRM_Coordinate

maximum_point;

} SE_Search_Bounds;

SE_Search_Rule

Abstract Data Type:         Search_Rule

typedef struct {

SE_Search_Rule_Type             rule_type;

union _SE_Search_Rule_Union {

SE_Unused

unused;

SE_Search_Rule_Predicate

predicate;

SE_DRM_Class

drm_class;

SE_Search_Rule_Field

field;

SE_Search_Rule_Field_Range

field_range;

SE_Search_Rule_Field_Array

field_array;

SE_Search_Rule_Comp_DRM_Class

component_drm_class;

SE_Search_Rule_Comp_Field

component_field;

SE_Search_Rule_Comp_Field_Range

component_field_range;

SE_Search_Rule_Comp_Field_Array

component_field_array;

SE_DRM_Class

association_drm_class;

SE_Short_Integer_Unsigned

max_search_depth;

} values;

} SE_Search_Rule;

SE_Search_Rule_Comp_DRM_Class

Abstract Data Type:         Search_Rule_Component_DRM_Class

typedef struct {

SE_DRM_Class

drm_class;

SE_DRM_Class

component_object_drm_class;

} SE_Search_Rule_Comp_DRM_Class;

SE_Search_Rule_Comp_Field

Abstract Data Type:         Search_Rule_Component_Field

typedef struct {

SE_DRM_Class

drm_class;

SE_DRM_Class

component_drm_class;

SE_Short_Integer_Unsigned

field_ordinal;

SE_Any_Search_Value

value;

} SE_Search_Rule_Comp_Field;

SE_Search_Rule_Comp_Field_Array

Abstract Data Type:         Search_Rule_Component_Field_Array

typedef struct {

SE_DRM_Class

drm_class;

SE_DRM_Class

component_drm_class;

SE_Short_Integer_Unsigned

field_ordinal;

SE_Any_Search_Value

value;

} SE_Search_Rule_Comp_Field_Array;

SE_Search_Rule_Comp_Field_Range

Abstract Data Type:         Search_Rule_Component_Field_Range

typedef struct {

SE_DRM_Class

drm_class;

SE_DRM_Class

component_drm_class;

SE_Short_Integer_Unsigned

field_ordinal;

SE_Any_Search_Value

value;

SE_Any_Search_Value

second_value;

} SE_Search_Rule_Comp_Field_Range;

SE_Search_Rule_Predicate

Abstract Data Type:         Search_Rule_Predicate

typedef struct {

SE_Any_Search_Value

value;

SE_Predicate

user_function;

} SE_Search_Rule_Predicate;

SE_Season_Fields

Abstract Data Type:         Season_Fields

typedef struct {

SE_Time_Significance

time_significance;

SE_Season

season;

} SE_Season_Fields;

SE_Security_Information

Abstract Data Type:         Security_Information

typedef struct {

SE_String

system;

SE_string

classification;

SE_String

handling;

} SE_Security_Information;

SE_Separating_Plane_Data_Fields

Abstract Data Type:         Separating_Plane_Data_Fields

typedef struct {

SE_Boolean

positive;

} SE_Separating_Plane_Data_Fields;

SE_Separating_Plane_Related_Geometry_Fields

Abstract Data Type:         Separating_Plane_Related_Geometry_Fields

typedef struct {

SE_Boolean

unique_descendants;

SE_Boolean

strict_organizing_principle;

} SE_Separating_Plane_Related_Geometry_Fields;

SE_Separating_Plane_Select_Parameters

Abstract Data Type:         Separating_Plane_Select_Parameters

typedef struct {

SE_Boolean

traverse_positive_branches;

SE_Boolean

traverse_negative_branches;

} SE_Separating_Plane_Select_Parameters;

SE_SM_Location_3D_Fields

Abstract Data Type:         SM_Location_3D_Fields

typedef struct {

SRM_SM_Coordinate_3D

coordinate;

} SE_SM_Location_3D_Fields;

SE_Sound_Fields

Abstract Data Type:         Sound_Fields

typedef struct {

SE_String

name;

SE_URN

sound_urn;

SE_Float

duration;

SE_Float

sampling_rate;

SE_Byte_Positive

bits_per_sample;

SE_Byte_Positive

channel_count;

SE_String

method;

} SE_Sound_Fields;

SE_Sound_Instance_Control_Link_Fields

Abstract Data Type:         Sound_Instance_Control_Link_Fields

typedef struct {

SE_String

description;

SE_Integer_Unsigned

active_sound_value_expression_index;

} SE_Sound_Instance_Control_Link_Fields;

SE_Sound_Instance_Fields

Abstract Data Type:         Sound_Instance_Fields

typedef struct {

SE_Boolean

active_sound_value;

} SE_Sound_Instance_Fields;

SE_Source_Fields

Abstract Data Type:         Source_Fields

typedef struct {

SE_String

description;

SE_Integer_Positive

scale;

SE_String

contribution;

} SE_Source_Fields;

SE_Spatial_Index_Data_Fields

Abstract Data Type:         Spatial_Index_Data_Fields

typedef struct {

SE_Integer_Positive

row_index;

SE_Integer_Positive

column_index;

} SE_Spatial_Index_Data_Fields;

SE_Spatial_Index_Parameters

Abstract Data Type:         Spatial_Index_Parameters

typedef struct {

SE_Spatial_Index_Data_Fields_1D

spatial_index_data_array;

} SE_Spatial_Index_Parameters;

SE_Spatial_Index_Related_Feature_Topology_Fields

Abstract Data Type:         Spatial_Index_Related_Feature_Topology_Fields

typedef struct {

SE_Boolean

sparse;

SE_Integer_Positive

column_count;

SE_Integer_Positive

row_count;

SE_Long_Float

column_width;

SE_Long_Float

row_width;

SE_Spatial_Index_Spacing_Units

spacing_units;

} SE_Spatial_Index_Related_Feature_Topology_Fields;

SE_Spatial_Index_Related_Features_Fields

Abstract Data Type:         Spatial_Index_Related_Features_Fields

typedef struct {

SE_Boolean

unique_descendants;

SE_Boolean

strict_organizing_principle;

SE_Boolean

sparse;

SE_Integer_Positive

column_count;

SE_Integer_Positive

row_count;

SE_Long_Float

column_width;

SE_Long_Float

row_width;

SE_Spatial_Index_Spacing_Units

spacing_units;

} SE_Spatial_Index_Related_Features_Fields;

SE_Spatial_Index_Related_Geometry_Fields

Abstract Data Type:         Spatial_Index_Related_Geometry_Fields

typedef struct {

SE_Boolean

unique_descendants;

SE_Boolean

strict_organizing_principle;

SE_Boolean

sparse;

SE_Integer_Unsigned

column_count;

SE_Integer_Unsigned

row_count;

SE_Long_Float

column_width;

SE_Long_Float

row_width;

SE_Spatial_Index_Spacing_Units

spacing_units;

} SE_Spatial_Index_Related_Geometry_Fields;

SE_Spatial_Index_Related_Geometry_Topology_Fields

Abstract Data Type:         Spatial_Index_Related_Geometry_Topology_Fields

typedef struct {

SE_Boolean

sparse;

SE_Integer_Positive

column_count;

SE_Integer_Positive

row_count;

SE_Long_Float

column_width;

SE_Long_Float

row_width;

SE_Spatial_Index_Spacing_Units

spacing_units;

} SE_Spatial_Index_Related_Geometry_Topology_Fields;

SE_Spatial_Resolution_LOD_Data_Fields

Abstract Data Type:         Spatial_Resolution_Level_Of_Detail_Data_Fields

typedef struct {

SE_Long_Float

spatial_resolution;

SE_Spatial_Index_Spacing_Unit

unit;

} SE_Spatial_Resolution_LOD_Data_Fields;

SE_Spherical_Volume_Extent_Fields

Abstract Data Type:         Spherical_Volume_Extent_Fields

typedef struct {

SE_Long_Float

radius;

} SE_Spherical_Volume_Extent_Fields;

SE_Spot_Light_Fields

Abstract Data Type:         Spot_Light_Fields

typedef struct {

SE_Boolean

apply_to_children;

SE_Boolean

override_positional_lights;

SE_Boolean

override_infinite_lights;

SE_Boolean

active_light_value;

SE_Float

radius;

SE_Long_Float

constant_attenuation_factor;

SE_Long_Float

linear_attenuation_factor;

SE_Long_Float

quadratic_attenuation_factor;

SE_Long_Float

horizontal_drop_off_rate;

SE_Long_Float

vertical_drop_off_rate;

} SE_Spot_Light_Fields;

SE_SRF_Summary_Fields

Abstract Data Type:         SRF_Summary_Fields

typedef struct {

SRM_SRF_Parameters

srf_parameters;

} SE_SRF_Summary_Fields;

SE_Stamp_Behaviour_Fields

Abstract Data Type:         Stamp_Behaviour_Fields

typedef struct {

SE_Rotation_Data

x_axis_limit;

SE_Rotation_Data

y_axis_limit;

SE_Rotation_Data

z_axis_limit;

} SE_Stamp_Behaviour_Fields;

SE_State_Control_Link_Fields

Abstract Data Type:         State_Control_Link_Fields

typedef struct {

SE_String

description;

SE_Integer_Positive

expression_index;

SE_State_Mismatch_Behaviour

mismatch_behaviour;

} SE_State_Control_Link_Fields;

SE_State_Data_Fields

Abstract Data Type:         State_Data_Fields

typedef struct {

SE_Property_Data_Value

state_value;

} SE_State_Data_Fields;

SE_State_Entry

Abstract Data Type:         State_Entry

typedef struct {

EDCS_Attribute_Code

state_tag;

SE_State_Data_Fields

state_data;

} SE_State_Entry;

SE_State_Related_Features_Fields

Abstract Data Type:         State_Related_Features_Fields

typedef struct {

SE_Boolean

unique_descendants;

SE_Boolean

strict_organizing_principle;

EDCS_Attribute_Code

state_tag;

SE_Property_Data_Value

archive_state_value;

} SE_State_Related_Features_Fields;

SE_State_Related_Geometry_Fields

Abstract Data Type:         State_Related_Geometry_Fields

typedef struct {

SE_Boolean

unique_descendants;

SE_Boolean

strict_organizing_principle;

EDCS_Attribute_Code

state_tag;

SE_Property_Data_Value

archive_state_value;

} SE_State_Related_Geometry_Fields;

SE_State_Select_Parameters

Abstract Data Type:         State_Select_Parameters

typedef struct {

SE_Unmatched_State_Behaviour

default_choice;

SE_Branch_Range_Matching

matching_rules;

SE_State_Entry_1D

state_entry_array;

} SE_State_Select_Parameters;

SE_String

Abstract Data Type:         String

typedef struct {

SE_Locale

locale;

SE_Characters_1D

characters;

} SE_String;

SE_Strobing_Light_Behaviour_Fields

Abstract Data Type:         Strobing_Light_Behaviour_Fields

typedef struct {

SE_Long_Float

period;

SE_Long_Float

delay;

} SE_Strobing_Light_Behaviour_Fields;

SE_Symbol_Fields

Abstract Data Type:         Symbol_Fields

typedef struct {

SE_String

name;

SE_URN

symbol_urn;

} SE_Symbol_Fields;

SE_Table_Property_Description_Fields

Abstract Data Type:         Table_Property_Description_Fields

typedef struct {

SE_Element_Type

attibute_code;

EDCS_Unit_Code

value_unit;

EDCS_Scale_Code

value_scale;

SE_Property_Data_Value

value_type;

EDCS_Classification_Code

component_data_table_scc;

} SE_Table_Property_Description_Fields;

SE_Text_Fields

Abstract Data Type:         Text_Fields

typedef struct {

SE_String

text_string;

SE_String

font;

} SE_Text_Fields;

SE_Text_Font

Abstract Data Type:         Text_Font

typedef struct {

SE_String

font_family;

SE_Font_Style

font_style;

SE_Float

font_size;

SE_Underline_Style

underline_style;

} SE_Text_Font;

SE_Texture_Coordinate_Control_Link_Fields

Abstract Data Type:         Texture_Coordinate_Control_Link_Fields

typedef struct {

SE_String

description;

SE_Integer_Unsigned

s_expression_index;

SE_Integer_Unsigned

t_expression_index;

} SE_Texture_Coordinate_Control_Link_Fields;

SE_Texture_Coordinate_Fields

Abstract Data Type:         Texture_Coordinate_Fields

typedef struct {

SE_Long_Float

s;

SE_Long_Float

t;

} SE_Texture_Coordinate_Fields;

SE_Texture_Coordinate_Table_Fields

Abstract Data Type:         Texture_Coordinate_Table_Fields

typedef struct {

SE_Integer_Positive

start_index;

} SE_Texture_Coordinate_Table_Fields;

SE_Time_Entry

Abstract Data Type:         Time_Entry

typedef struct {

SE_Time_Data_Type   time_entry_type;

union _SE_Time_Entry_Union {

SE_Month

month;

SE_Season_Fields

season;

SE_Time_Interval_Entry

time_interval;

SE_Time_Of_Day_Fields

time_of_day;

SE_Time_Point_Entry

time_point;

} time_data;

} SE_Time_Entry;

SE_Time_Interval_Entry

Abstract Data Type:         Time_Interval_Entry

typedef struct {

SE_Time_Measurement_Type   time_type;

union _SE_Time_Interval_Entry_Union {

SE_Absolute_Time_Interval_Entry

absolute_time;

SE_Relative_Time_Interval_Fields

relative_to_simulation;

SE_Relative_To_Absolute_Time_Interval_Entry

relative_to_absolute;

} time_interval_data;

} SE_Time_Interval_Entry;

SE_Time_Interval_Fields

Abstract Data Type:         Time_Interval_Fields

typedef struct {

SE_Time_Significance

time_significance;

} SE_Time_Interval_Fields;

SE_Time_Of_Day_Fields

Abstract Data Type:         Time_Of_Day_Fields

typedef struct {

SE_Time_Of_Day

time_of_day;

} SE_Time_Of_Day_Fields;

SE_Time_Point_Entry

Abstract Data Type:         Time_Point_Entry

typedef struct {

SE_Time_Measurement_Type   time_type;

union _SE_Time_Point_Entry_Union {

SE_Absolute_Time_Point_Fields

absolute_time;

SE_Relative_Time_Point_Fields

relative_to_start;

SE_Relative_To_Absolute_Time_Point_Entry

relative_to_reference;

} time_point_data;

} SE_Time_Point_Entry;

SE_Time_Related_Features_Fields

Abstract Data Type:         Time_Related_Features_Fields

typedef struct {

SE_Boolean

unique_descendants;

SE_Boolean

strict_organizing_principle;

SE_Time_Data_Type

time_data_type;

} SE_Time_Related_Features_Fields;

SE_Time_Related_Geometry_Fields

Abstract Data Type:         Time_Related_Geometry_Fields

typedef struct {

SE_Boolean

unique_descendants;

SE_Boolean

strict_organizing_principle;

SE_Time_Data_Type

time_data_type;

} SE_Time_Related_Geometry_Fields;

SE_Time_Select_Parameters

Abstract Data Type:         Time_Select_Parameters

typedef struct {

SE_Branch_Matching_Rules

matching_rules;

SE_Time_Entry_1D

time_entry_array;

} SE_Time_Select_Parameters;

SE_TM_Location_2D_Fields

Abstract Data Type:         TM_Location_2D_Fields

typedef struct {

SRM_TM_Coordinate_2D

coordinate;

} SE_TM_Location_2D_Fields;

SE_Translation_Control_Link_Fields

Abstract Data Type:         Translation_Control_Link_Fields

typedef struct {

SE_String

description;

SE_Integer_Unsigned

expression_index;

SE_Integer_Unsigned

lower_expression_index;

SE_Integer_Unsigned

upper_expression_index;

} SE_Translation_Control_Link_Fields;

SE_Translation_Fields

Abstract Data Type:         Translation_Fields

typedef struct {

SE_LSR_Transformation_Axis

axis;

SE_Long_Float

translation_amount;

} SE_Translation_Fields;

SE_Translucency_Control_Link_Fields

Abstract Data Type:         Translucency_Control_Link_Fields

typedef struct {

SE_String

description;

SE_Integer_Unsigned

expression_index;

} SE_Translucency_Control_Link_Fields;

SE_Translucency_Fields

Abstract Data Type:         Translucency_Fields

typedef struct {

SE_Long_Float

translucency_value;

} SE_Translucency_Fields;

SE_Transmittal_Root_Fields

Abstract Data Type:         Transmittal_Root_Fields

typedef struct {

SE_String

name;

SE_Short_Integer_Positive

major_DRM_version;

SE_Byte_Unsigned

minor_DRM_version;

SE_Character

interim_DRM_version;

SE_Short_Integer_Positive

major_EDCS_version;

SE_Byte_Unsigned

minor_EDCS_version;

SE_Character

interim_EDCS_version;

SE_String

credits;

} SE_Transmittal_Root_Fields;

SE_Transmittal_Summary_Fields

Abstract Data Type:         Transmittal_Summary_Fields

typedef struct {

SE_Present_In

features_present;

SE_Present_In

feature_topology_present;

SE_Present_In

geometry_present;

SE_Present_In

geometry_topology_present;

SE_Present_In

data_tables_present;

SE_Present_In

priority_values_present;

SE_Present_In

mobility_values_present;

SE_Present_In

thermal_values_present;

SE_Present_In

terrain_lods_present;

SE_Present_In

two_D_features_present;

SE_Boolean

models_present;

SE_Boolean

images_present;

SE_Boolean

sounds_present;

SE_Boolean

symbols_present;

SE_Boolean

colours_present;

SE_Colour_Model

colour_model;

SE_Boolean

EDCS_usage_list_is_comprehensive;

} SE_Transmittal_Summary_Fields;

SE_Union_Of_Features_Fields

Abstract Data Type:         Union_Of_Features_Fields

typedef struct {

SE_Boolean

unique_descendants;

SE_Boolean

strict_organizing_principle;

SE_Feature_Union_Reason

union_type;

SE_Ordering_Reason

ordering_reason;

} SE_Union_Of_Features_Fields;

SE_Union_Of_Feature_Topology_Fields

Abstract Data Type:         Union_Of_Feature_Topology_Fields

typedef struct {

SE_Feature_Topology_Level

feature_topology_level;

} SE_Union_Of_Feature_Topology_Fields;

SE_Union_Of_Geometry_Fields

Abstract Data Type:         Union_Of_Geometry_Fields

typedef struct {

SE_Boolean

unique_descendants;

SE_Boolean

strict_organizing_principle;

SE_Ordering_Reason

ordering_reason;

} SE_Union_Of_Geometry_Fields;

SE_Union_Of_Geometry_Hierarchy_Fields

Abstract Data Type:         Union_Of_Geometry_Hierarchy_Fields

typedef struct {

SE_Boolean

unique_descendants;

SE_Boolean

strict_organizing_principle;

SE_Ordering_Reason

ordering_reason;

} SE_Union_Of_Geometry_Hierarchy_Fields;

SE_Union_Of_Geometry_Topology_Fields

Abstract Data Type:         Union_Of_Geometry_Topology_Fields

typedef struct {

SE_Geometry_Topology_Level

geometry_topology_level;

} SE_Union_Of_Geometry_Topology_Fields;

SE_Union_Of_Primitive_Geometry_Fields

Abstract Data Type:         Union_Of_Primitive_Geometry_Fields

typedef struct {

SE_Boolean

unique_descendants;

SE_Boolean

strict_organizing_principle;

SE_Ordering_Reason

ordering_reason;

} SE_Union_Of_Primitive_Geometry_Fields;

SE_Unused_Fields

Abstract Data Type:         Unused_Fields

typedef struct {

SE_Integer

unused;

} SE_Unused_Fields;

SE_UPS_Location_2D_Fields

Abstract Data Type:         UPS_Location_2D_Fields

typedef struct {

SRM_UPS_2D_Coordinate

coordinate;

} SE_UPS_Location_2D_Fields;

SE_URN

Abstract Data Type:         URN

typedef struct {

SE_Character_1D

characters;

} SE_URN;

SE_User_Data

Abstract Data Type:         User_Data

typedef struct {

SE_Byte_Unsigned_1D

user_data;

} SE_User_Data;

SE_UTM_Location_2D_Fields

Abstract Data Type:         UTM_Location_2D_Fields

typedef struct {

SRM_UTM_Coordinate_2D

coordinate;

} SE_UTM_Location_2D_Fields;

SE_Variable_Fields

Abstract Data Type:         Variable_Fields

typedef struct {

SE_Element_Type

meaning;

EDCS_Unit_Code

value_unit;

EDCS_Scale_Code

value_scale;

SE_Property_Data_Value_Type

value_type;

SE_String

description;

SE_String

runtime_label;

} SE_Variable_Fields;

SE_Vertex_With_Component_Indices_Fields

Abstract Data Type:         Vertex_With_Component_Indices_Fields

typedef struct {

SE_Integer_Unsigned

colour_index;

SE_Integer_Unsigned

location_index;

SE_Integer_Unsigned

reference_vector_index;

SE_Integer_Unsigned

texture_coordinate_index;

SE_Integer_Unsigned

property_table_reference_index;

} SE_Vertex_With_Component_Indices_Fields;

SE_Volume_Extent_Entry

Abstract Data Type:         Volume_Extent_Entry

typedef struct {

SE_Volumetric_Shape        volume_type;

union _SE_Volume_Extent_Entry_Union {

SE_Spherical_Volume_Extent_Fields

sphere;

SE_Cylinder_Volume_Extent_Entry

cylinder;

SE_Parallelepiped_Volume_Extent_Entry

parallelepided;

} volume_extent_data;

} SE_Volume_Extent_Entry;

SE_Volume_Light_Behaviour_Fields

Abstract Data Type:         Volume_Light_Behaviour_Fields

typedef struct {

SE_Boolean

use_full_intensity;

SE_Long_Float

minimum_colour_intensity;

} SE_Volume_Light_Behaviour_Fields;

SE_Volume_LOD_Data_Fields

Abstract Data Type:         Volume_LOD_Data_Fields

typedef struct {

SE_Boolean

outside;

} SE_Volume_LOD_Data_Fields;

SE_Volume_LOD_Entry

Abstract Data Type:         Volume_LOD_Entry

typedef struct {

SE_Coordinate_3D

coordinate;

SE_Volume_Extent_Entry

volume_extent;

SE_Volume_LOD_Data_Fields

volume_lod;

} SE_Volume_LOD_Entry;

SE_World_Transformation_Fields

Abstract Data Type:         World_Transformation_Fields

typedef struct {

SE_Matrix_3x3

world_3x3;

} SE_World_Transformation_Fields;

5.5    Private data types

Private data types are defined such that an implementation may efficiently implement the data type as dictated by the characteristics of its own requirements. Such data types have a standard name but an internal organization defined by the implementation. The following data types define the public names for these data types.

SE_Iterator

Abstract Data Type:         Iterator

typedef void *SE_Iterator;

SE_Object

Abstract Data Type:         Object

typedef void *SE_Object;

SE_Packed_Hierarchy_Object_Access

Abstract Data Type:         Packed_Hierarchy_Object_Access

typedef void *SE_Packed_Hierarchy_Object_Access;

SE_Search_Boundary

Abstract Data Type:         Search_Boundary

typedef void *SE_Search_Boundary;

SE_Search_Filter

Abstract Data Type:         Search_Filter

typedef void *SE_Search_Filter;

SE_Store

Abstract Data Type:         none

typedef void *SE_Store;

SE_Test_Data

Abstract Data Type:         Test_Data

typedef void *SE_Test_Data;

SE_Transmittal

Abstract Data Type:         Transmittal

typedef void *SE_Transmittal;

5.6    Function data types

Function data types define signatures for call back functions. The following are the call back function signatures defined in this binding.

SE_Search_Rule_Predicate

Abstract Data Type:         Search_Rule_Predicate

typedef Boolean SE_Search_Rule_Predicate (

SE_Object,

SE_Object,

SE_Test_Data

 );

SE_Status_Logger

Abstract Data Type:         Status_Logger

typedef void SE_Status_Logger (

SE_Transmittal_API_Function,

SE_Status_Code,

SE_String,

SE_String

);