MAK Data Logger API Documentation for DIS
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
messagePipeline.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 messagePipeline_H_
10 #define messagePipeline_H_
11 
12 #include <lgrCore/lgrCore.h>
13 #include <lgrUtil/absoluteTime.h>
14 #include <list>
15 #include <vlutil/vlTime.h>
16 
17 namespace MAKLogger
18 {
19  class DtAbsoluteTime;
20  class DtMessageState;
21  class DtMessageOutput;
22  class DtMessageInput;
23  class DtLgrMessageOutputListener;
24 
29  {
30  public:
33 
35  virtual ~DtMessagePipeline();
36 
38  virtual void tick();
39 
45  virtual void bufferInputAndDiff(const DtAbsoluteTime& time, bool inclusive,
46  bool includeInteractions);
47 
50  virtual void reset();
51 
53  virtual void activate();
54 
56  virtual void deactivate();
57 
59  virtual void activateOutput();
60 
62  virtual void deactivateOutput();
63 
65  virtual bool wasListeningOnIdle();
66 
68  virtual bool isListeningOnIdle();
69 
71  virtual bool inputFlag() const;
73  virtual bool outputFlag() const;
75  virtual bool stateFlag() const;
76 
78  virtual void setInputFlag(bool onOff);
80  virtual void setOutputFlag(bool onOff);
82  virtual void setStateFlag(bool onOff);
83 
85  virtual const DtMessageInput* input() const;
87  virtual DtMessageInput* input();
88 
90  virtual const DtMessageOutput* output() const;
92  virtual DtMessageOutput* output();
93 
95  virtual const DtMessageState* state() const;
97  virtual DtMessageState* state();
98 
100  virtual DtRelativeTime startTime();
102  virtual DtRelativeTime endTime();
103 
105  virtual void setInput(DtMessageInput *input);
107  virtual void setOutput(DtMessageOutput *output);
109  virtual void setState(DtMessageState *state);
110 
113  virtual void addOutputListener(DtLgrMessageOutputListener* listener);
114 
117  virtual void removeOutputListener(DtLgrMessageOutputListener* listener);
118 
121  virtual void setPlaybackReadTimeLimit(double limit);
122 
125  virtual double playbackReadTimeLimit() const;
126 
127  protected:
128 
131 
133  DtMessagePipeline& operator=(const DtMessagePipeline&);
134 
141 
144 
147 
150 
152 
157 
158  typedef std::list<DtLgrMessageOutputListener*> OutputListeners;
160 
162  DtClock myLimitClock;
163 
166  };
167 }
168 
169 #endif

Document ID: Generated on Tue Aug 1 09:00:26 EDT 2017 from SVN revision 179128
Copyright © 2017 VT MÄK. All Rights Reserved (www.mak.com)