IrigBTimestamp.h

00001 /*-----------------------------------------------------------------------------
00002  * IrigBTimestamp declaration
00003  * Ionetrics 2006
00004  * John Williams
00005  * IrigBTimestamp.h
00006  *---------------------------------------------------------------------------*/
00007 
00008 #ifndef IRIGBTIMESTAMP_H
00009 #define IRIGBTIMESTAMP_H
00010 
00011 //-----------------------------------------------------------------------------
00012 
00013 #include <stdexcept>
00014 #include <vector>
00015 
00016 #include "AnnotatorCommApi.h"
00017 #include "Timestamp.h"
00018 
00019 using namespace std;
00020 
00021 //-----------------------------------------------------------------------------
00022 
00023 namespace annotatorcomm
00024 {
00025 
00032 class ANNCOMM_API IrigBTimestamp : public Timestamp
00033 {
00034 public:
00038         static const unsigned int LENGTH;
00039         
00043         static const unsigned int CONTROL_FUNCTION_BITS;
00044         
00045 public:
00052         IrigBTimestamp(vector<uint8_t> timestamp);
00053         
00057         virtual ~IrigBTimestamp();
00058         
00064         virtual int getYear() const;
00065         
00071         virtual int getDayOfYear() const;
00072         
00078         virtual int getSBS() const;
00079         
00085         virtual int getSecondOfDay() const;
00086         
00092         virtual long getMicrosecond() const;
00093         
00099         virtual int getHourOfDay() const;
00100         
00106         virtual int getMinuteOfHour() const;
00107         
00113         virtual int getSecondOfMinute() const;
00114         
00121         virtual int getControlFunctions() const;
00122         
00128         virtual string getFormattedControlFunctions() const;
00129         
00135         virtual string getExtendedFormatTime() const;
00136         
00144         virtual vector<uint8_t> getTimestampBytes() const;
00145 
00146 private:
00150         const vector<uint8_t> timestamp;
00151 };
00152 
00153 }
00154 
00155 //-----------------------------------------------------------------------------
00156 
00157 #endif /* IRIGBTIMESTAMP_H */

Generated on Tue Aug 1 11:14:11 2006 for libAnnotatorComm by  doxygen 1.4.7