Main Page | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members

RtcTimeStatistics.h

Go to the documentation of this file.
00001 // -*- C++ -*-
00013 #ifndef __RtcTimeStatistics_h__
00014 #define __RtcTimeStatistics_h__
00015 
00016 #include "rtm/RtcRingBuffer.h"
00017 
00018 namespace RTM
00019 {
00020 
00021 
00029   class TimeStatistics
00030   {
00031   public:
00037         TimeStatistics(int buflen = 100);
00038         
00044         void tick();
00045         
00051         void tack();
00052         
00058         int get_count() const {return m_Count;}
00059         
00065         void get_stat(unsigned long long &max_interval,
00066                                   unsigned long long &min_interval,
00067                                   double &mean_interval, double &stddev);
00068 
00074         unsigned long long get_hrtime();
00075 
00081         unsigned long long get_system_clock();
00082         
00083   private:
00084         RTM::RingBuffer<unsigned long long int> m_TimeRecord;
00085         unsigned long long int m_BeginTime;
00086         unsigned long long int m_EndTime;
00087         const int m_Count;
00088         unsigned long long m_CpuClock;
00089   };
00090   
00091 };
00092 
00093 
00094 #endif // End of __RtcTimeStatistics_h__

Generated on Thu Dec 16 15:29:18 2004 for OpenRTM by doxygen 1.3.6