summaryrefslogtreecommitdiff
path: root/modules/CIAO/performance-tests/Protocols/Receiver/Receiver_exec.h
diff options
context:
space:
mode:
Diffstat (limited to 'modules/CIAO/performance-tests/Protocols/Receiver/Receiver_exec.h')
-rw-r--r--modules/CIAO/performance-tests/Protocols/Receiver/Receiver_exec.h121
1 files changed, 121 insertions, 0 deletions
diff --git a/modules/CIAO/performance-tests/Protocols/Receiver/Receiver_exec.h b/modules/CIAO/performance-tests/Protocols/Receiver/Receiver_exec.h
new file mode 100644
index 00000000000..20b90f76dac
--- /dev/null
+++ b/modules/CIAO/performance-tests/Protocols/Receiver/Receiver_exec.h
@@ -0,0 +1,121 @@
+// $Id$
+
+#include "ReceiverEC.h"
+#include "Receiver_exec_export.h"
+#include "tao/LocalObject.h"
+#include "ace/High_Res_Timer.h"
+#include "ace/Sample_History.h"
+#include "ace/Array.h"
+
+namespace CIDL_ReceiverImpl
+{
+ class RECEIVER_EXEC_Export ReceiverExec_i :
+ public virtual ReceiverExec,
+ public virtual TAO_Local_RefCounted_Object
+ {
+ public:
+
+ ReceiverExec_i (void);
+
+ ::Protocols::CCM_test_ptr get_writer (void)
+ throw (CORBA::SystemException);
+
+ void shutdown (void)
+ throw (CORBA::SystemException);
+
+ void set_session_context (Components::SessionContext_ptr ctx)
+ throw (CORBA::SystemException,
+ Components::CCMException);
+
+ void ccm_activate (void)
+ throw (CORBA::SystemException,
+ Components::CCMException);
+
+ void ccm_passivate (void)
+ throw (CORBA::SystemException,
+ Components::CCMException);
+
+ void ccm_remove (void)
+ throw (CORBA::SystemException,
+ Components::CCMException);
+
+ void ciao_preactivate (void)
+ throw (CORBA::SystemException,
+ Components::CCMException);
+
+ void ciao_postactivate (void)
+ throw (CORBA::SystemException,
+ Components::CCMException);
+
+ protected:
+
+ ReceiverExec_Context_var context_;
+
+ CORBA::ORB_var orb_;
+
+ };
+
+ class RECEIVER_EXEC_Export test_i :
+ public virtual Protocols::CCM_test,
+ public virtual TAO_Local_RefCounted_Object
+ {
+ public:
+
+ test_i (void);
+
+ void start_test (CORBA::Long session_id,
+ const char *protocol,
+ CORBA::ULong invocation_rate,
+ CORBA::ULong message_size,
+ CORBA::ULong iterations)
+ throw (CORBA::SystemException);
+
+ void end_test (void)
+ throw (CORBA::SystemException);
+
+ void oneway_sync (void)
+ throw (CORBA::SystemException);
+
+ void twoway_sync (void)
+ throw (CORBA::SystemException);
+
+ void oneway_method (CORBA::Long session_id,
+ CORBA::ULong iteration,
+ const Protocols::test::octets &payload)
+ throw (CORBA::SystemException);
+
+ void twoway_method (CORBA::Long &session_id,
+ CORBA::ULong &iteration,
+ Protocols::test::octets &payload)
+ throw (CORBA::SystemException);
+
+ private:
+ typedef ACE_Array_Base<CORBA::Boolean> Invocations;
+ Invocations invocations_received_;
+ ACE_hrtime_t time_of_last_call_;
+ ACE_hrtime_t test_start_;
+ ACE_hrtime_t test_end_;
+ CORBA::Boolean first_invocation_;
+ ACE_Sample_History *inter_arrival_times_;
+ CORBA::ULong iterations_;
+ CORBA::ULong number_of_invocations_received_;
+ CORBA::Long session_id_;
+ };
+
+ class RECEIVER_EXEC_Export ReceiverHomeExec_i :
+ public virtual ReceiverHomeExec,
+ public virtual TAO_Local_RefCounted_Object
+ {
+ public:
+
+ ::Components::EnterpriseComponent_ptr create (void)
+ throw (CORBA::SystemException,
+ Components::CCMException);
+ };
+
+ extern "C" RECEIVER_EXEC_Export ::Components::HomeExecutorBase_ptr
+ createReceiverHome_Impl (void);
+}
+
+
+