00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016 #ifndef TAO_DYNANY_I_H
00017 #define TAO_DYNANY_I_H
00018 #include "ace/pre.h"
00019
00020 #include "tao/DynamicAny/DynamicAny.h"
00021
00022 #if !defined (ACE_LACKS_PRAGMA_ONCE)
00023 # pragma once
00024 #endif
00025
00026 #include "tao/DynamicAny/DynCommon.h"
00027 #include "tao/LocalObject.h"
00028
00029 #if defined (_MSC_VER)
00030 # pragma warning(push)
00031 # pragma warning (disable:4250)
00032 #endif
00033
00034 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00035
00036
00037
00038
00039
00040
00041 class TAO_DynamicAny_Export TAO_DynAny_i
00042 : public virtual DynamicAny::DynAny,
00043 public virtual TAO_DynCommon,
00044 public virtual TAO_Local_RefCounted_Object
00045 {
00046 public:
00047
00048 TAO_DynAny_i (void);
00049
00050
00051 ~TAO_DynAny_i (void);
00052
00053
00054 void init (CORBA::TypeCode_ptr tc
00055 );
00056
00057
00058 void init (const CORBA::Any& any
00059 );
00060
00061
00062 static TAO_DynAny_i *_narrow (
00063 CORBA::Object_ptr obj
00064 );
00065
00066
00067
00068 virtual void from_any (
00069 const CORBA::Any & value
00070 )
00071 ;
00072
00073 virtual CORBA::Any * to_any (
00074 void)
00075 ;
00076
00077 virtual CORBA::Boolean equal (
00078 DynamicAny::DynAny_ptr dyn_any
00079 )
00080 ;
00081
00082 virtual void destroy (
00083 void)
00084 ;
00085
00086 virtual DynamicAny::DynAny_ptr current_component (
00087 void)
00088 ;
00089
00090 private:
00091
00092 void check_typecode (CORBA::TypeCode_ptr tc
00093 );
00094
00095
00096 void set_to_default_value (CORBA::TypeCode_ptr tc
00097 );
00098
00099
00100 void init_common (void);
00101
00102
00103 TAO_DynAny_i (const TAO_DynAny_i &src);
00104 TAO_DynAny_i &operator= (const TAO_DynAny_i &src);
00105 };
00106
00107 TAO_END_VERSIONED_NAMESPACE_DECL
00108
00109 #if defined(_MSC_VER)
00110 # pragma warning(pop)
00111 #endif
00112
00113 #include "ace/post.h"
00114 #endif