Go to the documentation of this file.00001
00002
00003
00004
00005
00008
00009 #ifndef lgrDataViewSet_H_
00010 #define lgrDataViewSet_H_
00011
00012 #include "lgrCore.h"
00013
00014 #include <deque>
00015 #include <virtualConstructor.h>
00016 #include <vlutil/vlSmartPointers.h>
00017
00018 namespace MAKLogger
00019 {
00020 class DtPacket;
00021
00022 class DtLgrDataViewSet;
00023 typedef DtBoost::shared_ptr<DtLgrDataViewSet> DtLgrDataViewSetSP;
00024
00025 class DT_DLL_LGRCORE DtLgrDataViewSet
00026 {
00027 public:
00028
00029 struct DataPoint
00030 {
00031 double time;
00032 unsigned char type;
00033
00036 unsigned char unused1;
00037 unsigned char unused2;
00038 unsigned char unused3;
00039 };
00040
00041 typedef std::deque<DataPoint> DataPointSet;
00042 typedef std::deque<DataPoint>::iterator iterator;
00043 typedef std::deque<DataPoint>::const_iterator const_iterator;
00044
00046 DT_VIRTUAL_CTR(DtLgrDataViewSet,())
00047
00048
00049 virtual ~DtLgrDataViewSet();
00050
00053 virtual void addPacketData(const DtPacket& packet);
00054
00056 virtual void append(const DtLgrDataViewSet& secondSet);
00057
00060 virtual void clearAllBeforeTime(double time);
00061
00063 virtual void clearSet();
00064
00066 const_iterator begin() const;
00067
00069 const_iterator end() const;
00070
00072 size_t size() const;
00073
00074 protected:
00075
00076 DataPointSet myPoints;
00077 };
00078 }
00079
00080 #endif