summaryrefslogtreecommitdiff
path: root/TAO/orbsvcs/tests/Event/lib/Driver.i
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/orbsvcs/tests/Event/lib/Driver.i')
-rw-r--r--TAO/orbsvcs/tests/Event/lib/Driver.i59
1 files changed, 59 insertions, 0 deletions
diff --git a/TAO/orbsvcs/tests/Event/lib/Driver.i b/TAO/orbsvcs/tests/Event/lib/Driver.i
index f346e7757c1..b93a23fdbd2 100644
--- a/TAO/orbsvcs/tests/Event/lib/Driver.i
+++ b/TAO/orbsvcs/tests/Event/lib/Driver.i
@@ -5,3 +5,62 @@ EC_Driver::verbose (void) const
{
return this->verbose_;
}
+
+// ****************************************************************
+
+ACE_INLINE
+EC_Driver::Latency_Stats::Latency_Stats (void)
+ : n_ (0),
+ sum_ (0),
+ sum2_ (0),
+ min_ (0),
+ max_ (0)
+{
+}
+
+ACE_INLINE
+void EC_Driver::Latency_Stats::sample (ACE_hrtime_t sample)
+{
+ this->sum_ += sample;
+ this->sum2_ += sample * sample;
+ if (this->n_ == 0)
+ {
+ this->min_ = sample;
+ this->max_ = sample;
+ }
+ else if (this->min_ > sample)
+ this->min_ = sample;
+ else if (this->max_ < sample)
+ this->max_ = sample;
+ this->n_++;
+}
+
+// ****************************************************************
+
+ACE_INLINE
+EC_Driver::Throughput_Stats::Throughput_Stats (void)
+ : n_ (0),
+ done_ (0)
+{
+}
+
+ACE_INLINE void
+EC_Driver::Throughput_Stats::start (void)
+{
+ this->done_ = 0;
+ this->start_ = ACE_OS::gethrtime ();
+}
+
+ACE_INLINE void
+EC_Driver::Throughput_Stats::stop (void)
+{
+ this->stop_ = ACE_OS::gethrtime ();
+ this->done_ = 1;
+}
+
+ACE_INLINE void
+EC_Driver::Throughput_Stats::sample (void)
+{
+ this->n_++;
+ this->stop_ = ACE_OS::gethrtime ();
+}