// -*- IDL -*- /** * @file DynamicAny.pidl * * $Id$ * * @brief IDL source for the DynamicAny module. * * This file is used to generate the code in DynamicAnyC.{h,cpp}, it * was obtained from the OMG website as part of the full CORBA IDL, * the document reference number is: formal/04-03-01, or use the * following URL: * http://www.omg.org/technology/documents/formal/corba_omg_idl_text_file.htm * * We couldn't find a copyright notice in the document, but it is safe * to assume that it is Copyright (C) 2004, OMG. * */ #ifndef _DYNAMIC_ANY_IDL_ #define _DYNAMIC_ANY_IDL_ #include "tao/Typecode_types.pidl" #include "tao/BooleanSeq.pidl" #include "tao/CharSeq.pidl" #include "tao/DoubleSeq.pidl" #include "tao/FloatSeq.pidl" #include "tao/LongDoubleSeq.pidl" #include "tao/LongLongSeq.pidl" #include "tao/LongSeq.pidl" #include "tao/OctetSeq.pidl" #include "tao/BooleanSeq.pidl" #include "tao/ShortSeq.pidl" #include "tao/ULongLongSeq.pidl" #include "tao/ULongSeq.pidl" #include "tao/UShortSeq.pidl" #include "tao/WCharSeq.pidl" module DynamicAny { typeprefix DynamicAny "omg.org"; local interface DynAny { exception InvalidValue {}; exception TypeMismatch {}; CORBA::TypeCode type (); void assign (in DynAny dyn_any) raises (TypeMismatch); void from_any (in any value) raises (TypeMismatch, InvalidValue); any to_any (); boolean equal (in DynAny dyn_any); void destroy (); DynAny copy (); void insert_boolean (in boolean value) raises (TypeMismatch, InvalidValue); void insert_octet (in octet value) raises (TypeMismatch, InvalidValue); void insert_char (in char value) raises (TypeMismatch, InvalidValue); void insert_short (in short value) raises (TypeMismatch, InvalidValue); void insert_ushort (in unsigned short value) raises (TypeMismatch, InvalidValue); void insert_long (in long value) raises (TypeMismatch, InvalidValue); void insert_ulong (in unsigned long value) raises (TypeMismatch, InvalidValue); void insert_float (in float value) raises (TypeMismatch, InvalidValue); void insert_double (in double value) raises (TypeMismatch, InvalidValue); void insert_string (in string value) raises (TypeMismatch, InvalidValue); void insert_reference (in Object value) raises (TypeMismatch, InvalidValue); void insert_typecode (in CORBA::TypeCode value) raises (TypeMismatch, InvalidValue); void insert_longlong (in long long value) raises (TypeMismatch, InvalidValue); void insert_ulonglong (in unsigned long long value) raises (TypeMismatch, InvalidValue); void insert_longdouble (in long double value) raises (TypeMismatch, InvalidValue); void insert_wchar (in wchar value) raises (TypeMismatch, InvalidValue); void insert_wstring (in wstring value) raises (TypeMismatch, InvalidValue); void insert_any (in any value) raises (TypeMismatch, InvalidValue); void insert_dyn_any (in DynAny value) raises (TypeMismatch, InvalidValue); void insert_val (in ValueBase value) raises (TypeMismatch, InvalidValue); boolean get_boolean () raises (TypeMismatch, InvalidValue); octet get_octet () raises (TypeMismatch, InvalidValue); char get_char () raises (TypeMismatch, InvalidValue); short get_short () raises (TypeMismatch, InvalidValue); unsigned short get_ushort () raises (TypeMismatch, InvalidValue); long get_long () raises (TypeMismatch, InvalidValue); unsigned long get_ulong () raises (TypeMismatch, InvalidValue); float get_float () raises (TypeMismatch, InvalidValue); double get_double () raises (TypeMismatch, InvalidValue); string get_string () raises (TypeMismatch, InvalidValue); Object get_reference () raises (TypeMismatch, InvalidValue); CORBA::TypeCode get_typecode () raises (TypeMismatch, InvalidValue); long long get_longlong () raises (TypeMismatch, InvalidValue); unsigned long long get_ulonglong () raises (TypeMismatch, InvalidValue); long double get_longdouble () raises (TypeMismatch, InvalidValue); wchar get_wchar () raises (TypeMismatch, InvalidValue); wstring get_wstring () raises (TypeMismatch, InvalidValue); any get_any () raises (TypeMismatch, InvalidValue); DynAny get_dyn_any () raises (TypeMismatch, InvalidValue); ValueBase get_val () raises (TypeMismatch, InvalidValue); boolean seek (in long index); void rewind (); boolean next (); unsigned long component_count (); DynAny current_component () raises (TypeMismatch); void insert_abstract (in CORBA::AbstractBase value) raises (TypeMismatch, InvalidValue); CORBA::AbstractBase get_abstract () raises (TypeMismatch, InvalidValue); void insert_boolean_seq (in CORBA::BooleanSeq value) raises (TypeMismatch, InvalidValue); void insert_octet_seq (in CORBA::OctetSeq value) raises (TypeMismatch, InvalidValue); void insert_char_seq (in CORBA::CharSeq value) raises (TypeMismatch, InvalidValue); void insert_short_seq (in CORBA::ShortSeq value) raises (TypeMismatch, InvalidValue); void insert_ushort_seq (in CORBA::UShortSeq value) raises (TypeMismatch, InvalidValue); void insert_long_seq (in CORBA::LongSeq value) raises (TypeMismatch, InvalidValue); void insert_ulong_seq (in CORBA::ULongSeq value) raises (TypeMismatch, InvalidValue); void insert_float_seq (in CORBA::FloatSeq value) raises (TypeMismatch, InvalidValue); void insert_double_seq (in CORBA::DoubleSeq value) raises (TypeMismatch, InvalidValue); void insert_longlong_seq (in CORBA::LongLongSeq value) raises (TypeMismatch, InvalidValue); void insert_ulonglong_seq (in CORBA::ULongLongSeq value) raises (TypeMismatch, InvalidValue); void insert_longdouble_seq (in CORBA::LongDoubleSeq value) raises (TypeMismatch, InvalidValue); void insert_wchar_seq (in CORBA::WCharSeq value) raises (TypeMismatch, InvalidValue); CORBA::BooleanSeq get_boolean_seq () raises (TypeMismatch, InvalidValue); CORBA::OctetSeq get_octet_seq() raises (TypeMismatch, InvalidValue); CORBA::CharSeq get_char_seq () raises (TypeMismatch, InvalidValue); CORBA::ShortSeq get_short_seq () raises (TypeMismatch, InvalidValue); CORBA::UShortSeq get_ushort_seq () raises (TypeMismatch, InvalidValue); CORBA::LongSeq get_long_seq () raises (TypeMismatch, InvalidValue); CORBA::ULongSeq get_ulong_seq () raises (TypeMismatch, InvalidValue); CORBA::FloatSeq get_float_seq () raises (TypeMismatch, InvalidValue); CORBA::DoubleSeq get_double_seq () raises (TypeMismatch, InvalidValue); CORBA::LongLongSeq get_longlong_seq () raises (TypeMismatch, InvalidValue); CORBA::ULongLongSeq get_ulonglong_seq () raises (TypeMismatch, InvalidValue); CORBA::LongDoubleSeq get_longdouble_seq () raises (TypeMismatch, InvalidValue); CORBA::WCharSeq get_wchar_seq () raises (TypeMismatch, InvalidValue); }; local interface DynFixed : DynAny { string get_value (); boolean set_value (in string val) raises (TypeMismatch, InvalidValue); }; local interface DynEnum : DynAny { string get_as_string (); void set_as_string (in string value) raises (InvalidValue); unsigned long get_as_ulong (); void set_as_ulong (in unsigned long value) raises (InvalidValue); }; typedef string FieldName; struct NameValuePair { FieldName id; any value; }; typedef sequence NameValuePairSeq; struct NameDynAnyPair { FieldName id; DynAny value; }; typedef sequence NameDynAnyPairSeq; local interface DynStruct : DynAny { FieldName current_member_name () raises (TypeMismatch, InvalidValue); CORBA::TCKind current_member_kind () raises (TypeMismatch, InvalidValue); NameValuePairSeq get_members (); void set_members (in NameValuePairSeq value) raises (TypeMismatch, InvalidValue); NameDynAnyPairSeq get_members_as_dyn_any (); void set_members_as_dyn_any (in NameDynAnyPairSeq value) raises (TypeMismatch, InvalidValue); }; local interface DynUnion : DynAny { DynAny get_discriminator (); void set_discriminator (in DynAny d) raises (TypeMismatch); void set_to_default_member () raises (TypeMismatch); void set_to_no_active_member () raises (TypeMismatch); boolean has_no_active_member (); CORBA::TCKind discriminator_kind (); DynAny member () raises (InvalidValue); FieldName member_name () raises (InvalidValue); CORBA::TCKind member_kind () raises (InvalidValue); }; typedef sequence AnySeq; typedef sequence DynAnySeq; local interface DynSequence : DynAny { unsigned long get_length (); void set_length (in unsigned long len) raises (InvalidValue); AnySeq get_elements (); void set_elements (in AnySeq value) raises (TypeMismatch, InvalidValue); DynAnySeq get_elements_as_dyn_any (); void set_elements_as_dyn_any (in DynAnySeq value) raises (TypeMismatch, InvalidValue); }; local interface DynArray : DynAny { AnySeq get_elements (); void set_elements (in AnySeq value) raises (TypeMismatch, InvalidValue); DynAnySeq get_elements_as_dyn_any (); void set_elements_as_dyn_any (in DynAnySeq value) raises (TypeMismatch, InvalidValue); }; local interface DynValueCommon : DynAny { boolean is_null (); void set_to_null (); void set_to_value (); }; local interface DynValue : DynValueCommon { FieldName current_member_name () raises (TypeMismatch, InvalidValue); CORBA::TCKind current_member_kind () raises (TypeMismatch, InvalidValue); NameValuePairSeq get_members (); void set_members (in NameValuePairSeq value) raises (TypeMismatch, InvalidValue); NameDynAnyPairSeq get_members_as_dyn_any (); void set_members_as_dyn_any (in NameDynAnyPairSeq value) raises (TypeMismatch, InvalidValue); }; local interface DynValueBox : DynValueCommon { any get_boxed_value () raises (InvalidValue); void set_boxed_value (in any boxed) raises (TypeMismatch, InvalidValue); DynAny get_boxed_value_as_dyn_any () raises (InvalidValue); void set_boxed_value_as_dyn_any (in DynAny boxed) raises (TypeMismatch); }; exception MustTruncate {}; local interface DynAnyFactory { exception InconsistentTypeCode {}; DynAny create_dyn_any (in any value) raises (InconsistentTypeCode); DynAny create_dyn_any_from_type_code (in CORBA::TypeCode type) raises (InconsistentTypeCode); DynAny create_dyn_any_without_truncation (in any value) raises (InconsistentTypeCode, MustTruncate); DynAnySeq create_multiple_dyn_anys (in AnySeq values, in boolean allow_truncate) raises (InconsistentTypeCode, MustTruncate); AnySeq create_multiple_anys (in DynAnySeq values); }; }; // module DynamicAny #endif // _DYNAMIC_ANY_IDL_