MAK Data Logger API Documentation for DIS
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
loggerFileReader.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 1992-2010 VT MAK
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #ifndef loggerFileReader_H_
11 #define loggerFileReader_H_
12 
13 #include <lgrCore/lgrCore.h>
14 
15 #include "lgrFileInput.h"
16 #include <lgrUtil/filePosition.h>
17 #include <lgrUtil/memoryBuffer.h>
19 
20 namespace MAKLogger
21 {
22  class DtLoggerFile;
23  class DtMessageIOInfo;
24  class DtLoggerPlaybackFile;
25 
29  {
30 
31  public:
32 
35 
36 
37  virtual ~DtLoggerFileReader();
38 
39  private:
43  DtLoggerFileReader& operator=(const DtLoggerFileReader&);
44  public:
45 
47  virtual const DtLoggerPlaybackFile* playbackFile() const;
48 
50  virtual void setReadBufferSize(size_t);
51 
53  virtual size_t getReadBufferSize() const;
54 
56 
57  virtual void activate();
58  virtual void deactivate();
59 
60  virtual void getNextMessages(DtMessageBuffer&);
61  virtual void dropNextMessages();
62 
63  virtual const DtMessageIOInfo* info() const;
65 
67 
68 
71  virtual double peekCurrentPacketTime();
72 
75  virtual int peekCurrentPacketType();
76 
79  virtual size_t peekCurrentPacketSize();
80 
82  virtual bool recoverLastPacket();
83 
84  virtual bool isCheckpointNecessary(DtAbsoluteTime currentTime,
85  DtAbsoluteTime newTime);
86 
87  virtual void seekToPreviousCheckpoint(DtAbsoluteTime timeToJumpBefore);
88 
89  virtual void seekToNextCheckpoint(DtAbsoluteTime currentTime);
90 
92  virtual const DtString& filename() const;
93 
95  virtual DtFilePosition fileSize() const;
96 
98  virtual DtFilePosition currentPosition() const;
99 
101  virtual DtAbsoluteTime firstMessageTime() const;
102 
104  virtual DtAbsoluteTime lastMessageTime() const;
105 
107  virtual DtRelativeTime duration() const;
108 
110  virtual DtString description() const;
111 
113  virtual DtAbsoluteTime lastReadTime() const;
114 
116  virtual DtLgrEntityTracker* entityTracker() const;
117 
121  virtual bool testFileExpanding(bool updateLastTime=true);
122 
124 
125  protected:
126 
131  size_t myBufferSize;
134  };
135 }
136 
137 #endif
DtBoost::shared_ptr< DtMemoryBuffer > DtMemoryBufferSP
Definition: memoryBuffer.h:19
DtInt64 DtFilePosition
The position in a file, stored as a 64bit unsigned integer.
Definition: filePosition.h:18
Contains MAKLogger::DtLgrFileInput subclass of MAKLogger::DtMessageInput.
#define DT_VIRTUAL_CTR(CLASS_NAME, ARG_TYPES_LIST)
Declare a Virtual Constructor Create using DT_VIRTUAL_CTR(CLASS_NAME,ARG_TYPES_LIST) Where CLASS_NAME...
Definition: virtualConstructor.h:34
Contains MAKLogger::DtFilePosition typedef.
Relative Time, an elapsed duration of time, no implied measurement, could be seconds/cycles or ticks ...
Definition: absoluteTime.h:28
Contains DT_VIRTUAL_CTR DT_VIRTUAL_CTR_DEFAULTS DT_VIRTUAL_COPY_ASSIGN DT_VIRTUAL_BASE_CTR DT_PURE_VI...
The class responsible for reading a playback file to the pipeline.
Definition: loggerFileReader.h:28
An abstract interface for message input from a file.
Definition: lgrFileInput.h:26
Message buffer class responsible for storing a list of messages and iterating through that list...
Definition: messageBuffer.h:23
DtMemoryBufferSP myMemory
Definition: loggerFileReader.h:133
DtAbsoluteTime myLastTime
Definition: loggerFileReader.h:129
DtLoggerPlaybackFile * myCurrentFile
Definition: loggerFileReader.h:127
A message IO info object stores information about a specific message input or output stage...
Definition: messageIoInfo.h:21
DtAbsoluteTime myLastTimeRead
Definition: loggerFileReader.h:128
#define DT_DLL_LGRCORE
Definition: lgrCore.h:19
Indexes packets in a file.
Definition: lgrEntityTracker.h:32
Contains MAKLogger::DtMemoryBuffer class.
DtMessageIOInfo * myMessageInfo
Definition: loggerFileReader.h:132
size_t myBufferSize
Definition: loggerFileReader.h:131
A logger playback file which has an input file and it&#39;s format.
Definition: loggerPlaybackFile.h:25
DtAbsoluteTime myFirstTime
Definition: loggerFileReader.h:130
Absolute Time, a particular measured instance in time, could be thought of as a set of relative times...
Definition: absoluteTime.h:82
Contains lgrCore library definitions.

Document ID: Generated on Thu Sep 2 15:35:22 EDT 2021 from SVN revision 233992
Copyright © 2021 MAK Technologies. All Rights Reserved (www.mak.com)