Merge pull request #2258 from likema/log-msg-reset-ostream
[ACE_TAO.git] / TAO / tao / DynamicAny / DynValueCommon_i.h
blob7dbf099ecbfad214dacb57671ae3139e7d4811b0
1 // -*- C++ -*-
2 //=============================================================================
3 /**
4 * @file DynValueCommon_i.h
6 * @author simon dot massey at prismtech dot com
7 */
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)
18 # pragma once
19 #endif /* ACE_LACKS_PRAGMA_ONCE */
21 #if defined (_MSC_VER)
22 # pragma warning(push)
23 # pragma warning (disable:4250)
24 #endif /* _MSC_VER */
26 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
28 /**
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
37 public:
38 /// Constructor.
39 TAO_DynValueCommon_i (CORBA::Boolean allow_truncation=true);
41 /// Destructor.
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.
48 void init_common ();
50 // = Functions specific to DynValueCommon.
51 virtual CORBA::Boolean is_null ();
53 virtual void set_to_null ();
55 virtual void set_to_value () = 0;
57 private:
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;
65 protected:
66 CORBA::Boolean is_null_;
69 TAO_END_VERSIONED_NAMESPACE_DECL
71 #if defined(_MSC_VER)
72 # pragma warning(pop)
73 #endif /* _MSC_VER */
75 #include /**/ "ace/post.h"
76 #endif /* TAO_DYNVALUECOMMON_I_H */