形式
typedef CORBA_string CORBA_Identifier; /* 識別名 */ typedef CORBA_string CORBA_ScopedName; /* スコープ名 */ typedef CORBA_string CORBA_RepositoryId; /* グローバル名 */ enum CORBA_DefinitionKind { /* オブジェクト種別 */ dk_none, dk _all, dk_Attribute, dk_Constant, dk_Exception, dk_Interface, dk_Module, dk_Operation, dk_Typedef, dk_Alias, dk_Struct, dk_Union, dk_Enum, dk_Primitive, dk_String, dk_Sequence, dk_Array, dk_Repository, dk_Wstring } ; typedef CORBA_string CORBA_VersionSpec; /* バージョン情報 */ typedef CORBA_Object CORBA_IRObject; /* IRObjectのオブジェクトリファレンス */ typedef CORBA_Object CORBA_Contained; /* Containedオブジェクトリファレンス */ typedef CORBA_Object CORBA_Container; /* Containerオブジェクトリファレンス */ typedef CORBA_Object CORBA_IDLType; /* IDLTypeオブジェクトリファレンス */ typedef CORBA_Object CORBA_Repository; /* Repositoryオブジェクトリファレンス */ typedef CORBA_Object CORBA_ModuleDef; /* ModuleDefオブジェクトリファレンス */ typedef CORBA_Object CORBA_ConstantDef; /* ConstantDefオブジェクトリファレンス */ typedef CORBA_Object CORBA_TypedefDef; /* TypedefDefオブジェクトリファレンス */ typedef CORBA_Object CORBA_StructDef; /* StructDefオブジェクトリファレンス */ typedef CORBA_Object CORBA_UnionDef; /* UnionDefオブジェクトリファレンス */ typedef CORBA_Object CORBA_EnumDef; /* EnumDefオブジェクトリファレンス */ typedef CORBA_Object CORBA_AliasDef; /* AliasDefオブジェクトリファレンス */ typedef CORBA_Object CORBA_PrimitiveDef; /* PrimitiveDefオブジェクトリファレンス */ typedef CORBA_Object CORBA_StringDef; /* StringDefオブジェクトリファレンス */ typedef CORBA_Object CORBA_SequenceDef; /* SequenceDefオブジェクトリファレンス */ typedef CORBA_Object CORBA_ArrayDef; /* ArrayDefオブジェクトリファレンス */ typedef CORBA_Object CORBA_ExceptionDef; /* ExceptionDefオブジェクトリファレンス */ typedef CORBA_Object CORBA_AttributeDef; /* AttributeDefオブジェクトリファレンス */ typedef CORBA_Object CORBA_OperationDef; /* OperationDefオブジェクトリファレンス */ typedef CORBA_Object CORBA_InterfaceDef; /* InterfaceDefオブジェクトリファレンス */ typedef CORBA_Object CORBA_ WstringDef; /* WstringDefオブジェクトリファレンス */ typedef struct { /* オブジェクト情報構造体 */ CORBA_DefinitionKind kind; /* オブジェクト種別 */ CORBA_any value; /* オブジェクト別情報 */ } CORBA_Contained_Description; typedef struct { CORBA_unsigned_long _maximum; CORBA_unsigned_long _length; CORBA_Contained *_buffer; } CORBA_ContainedSeq; /* Contained オブジェクトリファレンスのsequence */ typedef struct { /* オブジェクト情報構造体 */ CORBA_Contained contained_object; /* オブジェクトリファレンス */ CORBA_DefinitionKind kind; /* オブジェクト種別 */ CORBA_any value; /* オブジェクト別情報 */ } CORBA_Container_Description; typedef struct { CORBA_unsigned_long _maximum; CORBA_unsigned_long _length; CORBA_Container_Description *_buffer; } CORBA_Container_DescriptionSeq; /* Container_Description 構造体のsequence */ typedef struct { /* ModuleDef 情報構造体 */ CORBA_Identifier name; /* 識別名 */ CORBA_RepositoryId id; /* グローバル 名 */ CORBA_RepositoryId defined_in; /* 親オブジェクトのグローバル名 */ CORBA_VersionSpec version; /* バージョン情報 */ } CORBA_ModuleDescription; typedef struct { /* ConstantDef 情報構造体 */ CORBA_Identifier name; /* 識別名 */ CORBA_RepositoryId id; /* グローバル名 */ CORBA_RepositoryId defined_in; /* 親オブジェクトのグローバル名 */ CORBA_VersionSpec version; /* バージョン情報 */ CORBA_TypeCode type; /* タイプコード*/ CORBA_any value; /* 値 */ } CORBA_ConstantDescription; typedef struct { /* Typedef 情報構造体 */ CORBA_Identifier name; /* 識別名 */ CORBA_RepositoryId id; /* グローバル名 */ CORBA_RepositoryId defined_in; /* 親オブジェクトのグローバル名 */ CORBA_VersionSpec version; /* バージョン情報 */ CORBA_TypeCode type; /* タイプコード */ } CORBA_TypeDescription; typedef struct { /* 構造体メンバ構造体 */ CORBA_Identifier name; /* 識別名 */ CORBA_TypeCode type; /* タイプコード */ CORBA_IDLType type_def; /* メンバのオブジェクトリファレンス */ } CORBA_StructMember; typedef struct { CORBA_unsigned_long _maximum; CORBA_unsigned_long _length; struct CORBA_StructMember *_buffer; } CORBA_StructMemberSeq; /* 構造体メンバ構造体のsequence */ typedef struct { /* union メンバ構造体 */ CORBA_Identifier name; /* 識別名 */ CORBA_any label; /* 弁別値 */ CORBA_TypeCode type; /* タイプコード */ CORBA_IDLType type_def; /* メンバのオブジェクトリファレンス */ } CORBA_UnionMember; typedef struct { CORBA_unsigned_long _maximum; CORBA_unsigned_long _length; struct CORBA_UnionMember *_buffer; } CORBA_UnionMemberSeq; /* unionメンバ構造体のsequence */ typedef struct { CORBA_unsigned_long _maximum; CORBA_unsigned_long _length; CORBA_string *_buffer; } CORBA_EnumMemberSeq; /* Enum メンバのsequence */ enum CORBA_PrimitiveKind { /* PrimitiveDef種別 */ pk_null, pk_void, pk_short, pk_long, pk_ushort, pk_ulong, pk_float, pk_double, pk_boolean, pk_char, pk_octet, pk_any, pk_TypeCode, pk_Principal, pk_string, pk_objref, pk_longlong, pk_ulonglong, pk_longdouble,pk_wchar, pk_wstring } ; typedef struct { /* ExceptionDef情報構造体 */ CORBA_Identifier name; /* 識別名 */ CORBA_RepositoryId id; /* グローバル名 */ CORBA_RepositoryId defined_in; /* 親オブジェクトのグローバル名 */ CORBA_VersionSpec version; /* バージョン情報 */ CORBA_TypeCode type; /* タイプコード */ } CORBA_ExceptionDescription; enum CORBA_AttributeMode { ATTR_NORMAL, ATTR _READONLY } ; /* Atributeの属性種別 */ typedef struct { /* AttributeDef情報構造体 */ CORBA_Identifier name; /* 識別名 */ CORBA_RepositoryId id; /* グローバル名 */ CORBA_RepositoryId defined_in /* 親オブジェクトのグローバル名 */ CORBA_VersionSpec version; /* バージョン情報 */ CORBA_TypeCode type; /* タイプコード */ CORBA_AttributeMode mode; /* 属性 */ } CORBA_AttributeDescription; enum CORBA_OperationMode { OP_NORMAL, OP _ONEWAY } ; /* Operation の属性種別 */ enum CORBA_ParameterMode { PARAM_IN, PARAM_OUT, PARAM_INOUT }; /* Parameter の属性種別 */ typedef struct { /* パラメタ情報構造体 */ CORBA_Identifier name; /* 識別名 */ CORBA_TypeCode type; /* タイプコード */ CORBA_IDLType type_def; CORBA_ParameterMode mode; /* 属性 */ } CORBA_ParameterDescription; typedef struct { CORBA_unsigned_long _maximum; CORBA_unsigned_long _length; struct CORBA_ParameterDescription *_buffer; } CORBA_ParDescriptionSeq; /* パラメタ情報構造体のsequence */ typedef CORBA_Identifier CORBA_ContextIdentifier; typedef struct { CORBA_unsigned_long _maximum; CORBA_unsigned_long _length; CORBA_string *_buffer; } CORBA_ContextIdSeq; /* ContextIdentifier のsequence */ typedef struct { CORBA_unsigned_long _maximum; CORBA_unsigned_long _length; CORBA_ExceptionDef *_buffer; } CORBA_ExceptionDefSeq; /* ExceptionDefオブジェクトリファレンスのsequence */ typedef struct { CORBA_unsigned_long _maximum; CORBA_unsigned_long _length; struct CORBA_ExceptionDescription *_buffer; } CORBA_ExcDescriptionSeq; /* ExceptionDef情報構造体のsequence */ typedef struct { /* ExceptionDef情報構造体 */ CORBA_Identifier name; /* 識別名 */ CORBA_RepositoryId id; /* グローバル名 */ CORBA_RepositoryId defined_in; /* 親オブジェクトのグローバル 名 */ CORBA_VersionSpec version; /* バージョン情報 */ CORBA_TypeCode result; /* 復帰値のタイプコード */ CORBA_OperationMode mode; /* 属性 */ CORBA_ContextIdSeq contexts; /* コンテキスト */ CORBA_ParDescriptionSeq parameters; /* パラメタ情報 */ CORBA_ExcDescriptionSeq exceptions; /* 例外情報 */ } CORBA_OperationDescription; typedef struct { CORBA_unsigned_long _maximum; CORBA_unsigned_long _length; CORBA_InterfaceDef *_buffer; } CORBA_InterfaceDefSeq; /* InterfaceDef情報構造体のsequence */ typedef struct { CORBA_unsigned_long _maximum; CORBA_unsigned_long _length; CORBA_string *_buffer; } CORBA_RepositoryIdSeq; /* RepositoriIdのsequence */ typedef struct { CORBA_unsigned_long _maximum; CORBA_unsigned_long _length; struct CORBA_OperationDescription *_buffer; } CORBA_OpDescriptionSeq; /* OperationDef情報構造体のsequence */ typedef struct { CORBA_unsigned_long _maximum; CORBA_unsigned_long _length; struct CORBA_AttributeDescription *_buffer; } CORBA_AttrDescriptionSeq; /* AttributeDef情報構造体のsequence */ typedef struct { /* インタフェース情報構造体 */ CORBA_Identifier name; /* 識別名 */ CORBA_RepositoryId id; /* グローバル名 */ CORBA_RepositoryId defined_in; /* 親オブジェクトのグローバル名 */ CORBA_VersionSpec version; /* バージョン情報 */ CORBA_OpDescriptionSeq operations; /* オペレーション情報 */ CORBA_AttrDescriptionSeq attributes; /* アトリビュート情報 */ CORBA_RepositoryIdSeq base_interfaces; /* 継承情報 */ CORBA_TypeCode type; /* タイプコード */ } CORBA_InterfaceDef_FullInterfaceDescription; typedef struct { /* InterfaceDef情報構造体 */ CORBA_Identifier name; /* 識別名 */ CORBA_RepositoryId id; /* グローバル名 */ CORBA_RepositoryId defined_in; /* 親オブジェクトのグローバル名 */ CORBA_VersionSpec version; /* バージョン情報 */ CORBA_RepositoryIdSeq base_interfaces; /* 継承情報 */ } CORBA_InterfaceDescription;