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 inputFlag() const;
70  virtual bool outputFlag() const;
72  virtual bool stateFlag() const;
73 
75  virtual void setInputFlag(bool onOff);
77  virtual void setOutputFlag(bool onOff);
79  virtual void setStateFlag(bool onOff);
80 
82  virtual const DtMessageInput* input() const;
84  virtual DtMessageInput* input();
85 
87  virtual const DtMessageOutput* output() const;
89  virtual DtMessageOutput* output();
90 
92  virtual const DtMessageState* state() const;
94  virtual DtMessageState* state();
95 
97  virtual DtRelativeTime startTime();
99  virtual DtRelativeTime endTime();
100 
102  virtual void setInput(DtMessageInput *input);
104  virtual void setOutput(DtMessageOutput *output);
106  virtual void setState(DtMessageState *state);
107 
110  virtual void addOutputListener(DtLgrMessageOutputListener* listener);
111 
114  virtual void removeOutputListener(DtLgrMessageOutputListener* listener);
115 
118  virtual void setPlaybackReadTimeLimit(double limit);
119 
122  virtual double playbackReadTimeLimit() const;
123 
124  protected:
125 
128 
130  DtMessagePipeline& operator=(const DtMessagePipeline&);
131 
138 
141 
144 
147 
149 
154 
155  typedef std::list<DtLgrMessageOutputListener*> OutputListeners;
157 
159  DtClock myLimitClock;
160 
163  };
164 }
165 
166 #endif

Document ID: Generated on Thu Apr 7 20:50:59 EDT 2016 from SVN revision 163818
Copyright © 2005-2012 VT MÄK. All Rights Reserved (www.mak.com)