summaryrefslogtreecommitdiff
path: root/TAO/tao/DynamicAny/DynamicAny.pidl
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/tao/DynamicAny/DynamicAny.pidl')
-rw-r--r--TAO/tao/DynamicAny/DynamicAny.pidl402
1 files changed, 402 insertions, 0 deletions
diff --git a/TAO/tao/DynamicAny/DynamicAny.pidl b/TAO/tao/DynamicAny/DynamicAny.pidl
new file mode 100644
index 00000000000..a8d9aaaa243
--- /dev/null
+++ b/TAO/tao/DynamicAny/DynamicAny.pidl
@@ -0,0 +1,402 @@
+// -*- 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<NameValuePair> NameValuePairSeq;
+
+ struct NameDynAnyPair
+ {
+ FieldName id;
+ DynAny value;
+ };
+
+ typedef sequence<NameDynAnyPair> 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<any> AnySeq;
+ typedef sequence<DynAny> 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_