diff options
Diffstat (limited to 'TAO/tests/Sequence_Unit_Tests/mock_reference.hpp')
-rw-r--r-- | TAO/tests/Sequence_Unit_Tests/mock_reference.hpp | 43 |
1 files changed, 36 insertions, 7 deletions
diff --git a/TAO/tests/Sequence_Unit_Tests/mock_reference.hpp b/TAO/tests/Sequence_Unit_Tests/mock_reference.hpp index d0583ca6843..0c2a4c21ecf 100644 --- a/TAO/tests/Sequence_Unit_Tests/mock_reference.hpp +++ b/TAO/tests/Sequence_Unit_Tests/mock_reference.hpp @@ -14,6 +14,9 @@ #include "testing_counters.hpp" +#include "tao/Basic_Types.h" + +TAO_BEGIN_VERSIONED_NAMESPACE_DECL // Forward declare the class a CORBA::release function for it. That // avoids having to introduce CORBA::Object into the tests. // Ideally the T_var and T_out types should accept mock objects @@ -24,11 +27,20 @@ namespace CORBA void release(mock_reference*); } -#include "tao/Pseudo_VarOut_T.h" +class mock_stream; + +TAO_END_VERSIONED_NAMESPACE_DECL + +#include "tao/Objref_VarOut_T.h" +TAO_BEGIN_VERSIONED_NAMESPACE_DECL + +typedef mock_reference *mock_reference_ptr; +typedef TAO_Objref_Var_T<mock_reference> mock_reference_var; +typedef TAO_Objref_Out_T<mock_reference> mock_reference_out; /** - * @class + * @class mock_reference * * @brief Implement a concrete class with the right interface for an * object reference. @@ -38,8 +50,8 @@ class mock_reference public: virtual ~mock_reference(); - typedef TAO_Pseudo_Var_T<mock_reference> _var_type; - typedef TAO_Pseudo_Out_T<mock_reference,_var_type> _out_type; + typedef mock_reference_var _var_type; + typedef mock_reference_out _out_type; static mock_reference * allocate(int id); static mock_reference * _nil(); @@ -48,6 +60,9 @@ public: static mock_reference * _duplicate(mock_reference * rhs); static call_counter release_calls; static void _tao_release(mock_reference * rhs); + static call_counter serialize_calls; + static call_counter deserialize_calls; + static call_counter marshal_calls; inline bool operator==(mock_reference const & rhs) const { @@ -65,6 +80,8 @@ public: } private: + mock_reference (); + inline mock_reference(int id) : id_(id) {} @@ -73,8 +90,20 @@ private: int id_; }; -typedef mock_reference * mock_reference_ptr; -typedef mock_reference::_var_type mock_reference_var; -typedef mock_reference::_out_type mock_reference_out; +CORBA::Boolean operator<< (TAO_OutputCDR &, const mock_reference *); +CORBA::Boolean operator>> (TAO_InputCDR &, mock_reference *&); + +namespace TAO +{ + template<> + struct Objref_Traits< mock_reference> + { + static mock_reference_ptr duplicate (mock_reference_ptr); + static void release (mock_reference_ptr); + static mock_reference_ptr nil (void); + static CORBA::Boolean marshal (const mock_reference_ptr p, TAO_OutputCDR & cdr); + }; +} +TAO_END_VERSIONED_NAMESPACE_DECL #endif // guard_mock_reference_hpp |