MAK Data Logger API Documentation for DIS
lgrFileFormatter.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 1992-2010 VT MAK
3 ** All rights reserved.
4 ******************************************************************************/
5 
8 
9 #ifndef lgrFileFormatter_H_
10 #define lgrFileFormatter_H_
11 
12 #include "lgrCore.h"
13 #include "virtualConstructor.h"
14 #include "loggerFileMetaData.h"
15 #include "filePosition.h"
16 #include <vector>
17 
18 namespace MAKLogger
19 {
20 
21  class DtLoggerFile;
22  class DtSmartBuffer;
23  class DtMessageBuffer;
24  class DtLgrEntityTracker;
25 
34  {
35  protected:
36 
43 
44  public:
45 
47  virtual ~DtLgrFileFormatter();
48 
49  private:
53  DtLgrFileFormatter& operator=(const DtLgrFileFormatter&);
54 
55  public:
56 
58 
59  virtual DtLoggerFile* loggerFile();
60  virtual const DtLoggerFile* loggerFile() const;
62 
66  virtual void setSerialMode(bool enable);
67 
69  virtual bool serialMode() const;
70 
72 
73  DtLoggerFileMetaData* metaData();
74  const DtLoggerFileMetaData* metaData() const;
76 
78  virtual void copyMetaData(const DtLgrFileFormatter* formatter);
79 
81  virtual DtLgrEntityTracker* entityTracker() const;
82 
85  virtual void setTimeLimit(double limit);
86 
88 
89 
98  virtual void initializeSerialMode(DtFilePosition firstPacket = 0,
99  DtFilePosition lastPacket = 0) = 0;
100 
102  virtual bool isEofValid() const = 0;
103 
112  virtual bool atEndOfFile() = 0;
113 
118  virtual bool seekToFirstPacket() = 0;
119 
124  virtual bool seekToFirstPacket(int type) = 0;
125 
130  virtual bool seekToLastPacket() = 0;
131 
136  virtual bool seekToLastPacket(int type) = 0;
137 
142  virtual bool seekToFirstPacketBeforeTime(double time) = 0;
143 
147  virtual bool seekToFirstPacketBeforeTime(int type,double time) = 0;
148 
153  virtual bool seekToFirstPacketAfterTime(double time) = 0;
154 
159  virtual bool seekToFirstPacketAfterTime(int type,double time) = 0;
160 
164  virtual bool seekToNextPacket() = 0;
165 
170  virtual bool seekToNextPacket(int type) = 0;
171 
175  virtual bool seekToPreviousPacket() = 0;
176 
181  virtual bool seekToPreviousPacket(int type) = 0;
182 
185  virtual void seekToPosition(DtFilePosition) = 0;
186 
189  virtual double currentPacketTime() = 0;
190 
193  virtual int currentPacketType() = 0;
194 
197  virtual size_t currentPacketSize() = 0;
198 
200  virtual DtFilePosition currentPosition() = 0;
201 
203  virtual bool hasCheckpoints() const = 0;
204 
209  virtual void readMetaData() = 0;
210 
212  virtual void readMetaData(DtLoggerFileMetaData::DataPosition position) = 0;
213 
215  virtual void writeMetaData(DtLoggerFileMetaData::DataPosition position) = 0;
216 
220  virtual void readPacketsUptoCount(DtMessageBuffer&,DtMemoryBufferSP,int packetCount) = 0;
221 
224  virtual void readPacketsUptoSize(DtMessageBuffer&,DtMemoryBufferSP) = 0;
225 
232  virtual double readPacketsUpToTime(DtMessageBuffer&,DtMemoryBufferSP,double time,
233  bool inclusive = true) = 0;
234 
237  virtual void writePackets(const DtMessageBuffer&) = 0;
238 
241  virtual void writePacket(const DtPacket& packet) = 0;
242 
252  virtual size_t writePacket(const DtPacket&,void* memory, size_t memorySize,
253  int fileWriteBufferOffset = -1 ) = 0;
254 
256  virtual void setDuration(double duration) = 0;
257 
259  virtual double duration() const = 0;
260 
262  virtual size_t headerSize() const = 0;
263 
265  virtual size_t tailSize() const = 0;
266 
268 
269  protected:
270 
275  };
276 }
277 
278 #endif

Document ID: Generated on Thu Apr 11 12:13:00 EDT 2013 from SVN revision 126011
Copyright © 2005-2012 VT MÄK. All Rights Reserved (www.mak.com)