2 //=============================================================================
4 * @file DynValueCommon_i.h
6 * @author simon dot massey at prismtech dot com
8 //=============================================================================
11 #ifndef TAO_DYNVALUECOMMON_I_H
12 #define TAO_DYNVALUECOMMON_I_H
13 #include /**/ "ace/pre.h"
15 #include "tao/DynamicAny/DynAny_i.h"
17 #if !defined (ACE_LACKS_PRAGMA_ONCE)
19 #endif /* ACE_LACKS_PRAGMA_ONCE */
21 #if defined (_MSC_VER)
22 # pragma warning(push)
23 # pragma warning (disable:4250)
26 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
29 * @class TAO_DynValueCommon_i
31 * @brief Implementation of the DynValueCommon class.
33 class TAO_DynamicAny_Export TAO_DynValueCommon_i
34 : public virtual DynamicAny::DynValueCommon
,
35 public virtual TAO_DynAny_i
39 TAO_DynValueCommon_i (CORBA::Boolean allow_truncation
=true);
42 ~TAO_DynValueCommon_i ();
44 // = LocalObject methods.
45 static TAO_DynValueCommon_i
*_narrow (CORBA::Object_ptr obj
);
47 /// Called by DynValue and DynValueBox init() functions.
50 // = Functions specific to DynValueCommon.
51 virtual CORBA::Boolean
is_null ();
53 virtual void set_to_null ();
55 virtual void set_to_value () = 0;
58 // = Use copy() or assign() instead of these.
59 TAO_DynValueCommon_i (const TAO_DynValueCommon_i
&src
);
60 TAO_DynValueCommon_i
&operator= (const TAO_DynValueCommon_i
&src
);
62 /// Check if the typecode is acceptable. Needs to be provided by DynValue or DynValueBox
63 virtual void check_typecode (CORBA::TypeCode_ptr tc
)=0;
66 CORBA::Boolean is_null_
;
69 TAO_END_VERSIONED_NAMESPACE_DECL
75 #include /**/ "ace/post.h"
76 #endif /* TAO_DYNVALUECOMMON_I_H */