1 #ifndef object_reference_traits_base_hpp
2 #define object_reference_traits_base_hpp
6 * @brief Base class for the object reference traits.
8 * @author Carlos O'Ryan
11 #include "tao/Objref_VarOut_T.h"
13 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
20 template<typename object_t
, typename object_t_var
>
21 struct object_reference_traits_base
23 typedef object_t object_type
;
24 typedef object_type
* value_type
;
25 typedef object_type
const * const_value_type
;
26 typedef object_t_var object_type_var
;
28 inline static void release(object_type
* object
)
30 TAO::Objref_Traits
<object_type
>::release(object
);
33 inline static object_type
* duplicate(object_type
* object
)
35 return TAO::Objref_Traits
<object_type
>::duplicate(object
);
38 inline static object_type
* nil()
40 return TAO::Objref_Traits
<object_type
>::nil();
43 inline static object_type
* default_initializer()
49 } // namespace details
52 TAO_END_VERSIONED_NAMESPACE_DECL
54 #endif // object_reference_traits_base_hpp