summaryrefslogtreecommitdiff
path: root/TAO/tests/Sequence_Unit_Tests/mock_reference.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/tests/Sequence_Unit_Tests/mock_reference.hpp')
-rw-r--r--TAO/tests/Sequence_Unit_Tests/mock_reference.hpp43
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