diff options
Diffstat (limited to 'trunk/TAO/performance-tests/Callback/Callback_i.h')
-rw-r--r-- | trunk/TAO/performance-tests/Callback/Callback_i.h | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/trunk/TAO/performance-tests/Callback/Callback_i.h b/trunk/TAO/performance-tests/Callback/Callback_i.h new file mode 100644 index 00000000000..b3423a573b0 --- /dev/null +++ b/trunk/TAO/performance-tests/Callback/Callback_i.h @@ -0,0 +1,45 @@ +// $Id$ + +#ifndef TAO_CALLBACK_I_H +#define TAO_CALLBACK_I_H + +#include "callbackS.h" +#include "ace/Sample_History.h" + +/// Implement the Test::Callback interface +class Callback_i : public POA_Test::Callback +{ +public: + /// Constructor. + Callback_i (int expected_samples); + + /// Return 1 when all the samples have been received + int done (void); + + /// Get access to the history + ACE_Sample_History &sample_history (void); + + /// Implement the CORBA methods + //@{ + void response (Test::TimeStamp, + const Test::Payload & + ACE_ENV_ARG_DECL_NOT_USED) + ACE_THROW_SPEC ((CORBA::SystemException)); + //@} + +private: + /// Synchronize access to the history data during testing + TAO_SYNCH_MUTEX mutex_; + + /// Save the history of the latency values + ACE_Sample_History history_; + + /// The number of samples still expected + int remaining_samples_; +}; + +#if defined(__ACE_INLINE__) +#include "Callback_i.inl" +#endif /* __ACE_INLINE__ */ + +#endif /* TAO_CALLBACK_I_H */ |