MAK Data Logger API Documentation for DIS
lgrDisMessageState.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 lgrDisMessageState_H_
11 #define lgrDisMessageState_H_
12 
13 #if DtDIS
14 
15 #include "lgrSim.h"
16 #include "messageState.h"
17 #include "virtualConstructor.h"
18 
19 #include <list>
20 #include <set>
21 #include <vlpi/disEnums.h>
22 
23 enum DtPduKind;
24 
25 namespace MAKLogger
26 {
27 
28  class DtLgrDisSimulationManager;
29 
33  {
34  public:
35 
36  typedef std::set<DtPduKind> DtPduKindSet;
37 
39  (const DtPduKindSet& statePduKinds, const DtLgrDisSimulationManager* simMgr),
40  (const DtPduKindSet& statePduKinds, const DtLgrDisSimulationManager* simMgr=0))
41 
42  virtual ~DtLgrDisMessageState();
43 
46  virtual void modifyMessages(DtMessageBuffer& messages);
47 
49  virtual void modifyMessage(DtPacket& packet);
50 
52  virtual void decodeCheckpoint(const DtPacket& packet,DtMessageBuffer& buffer);
53 
56  virtual DtPacket* generateCheckpoint(const DtAbsoluteTime& timestampe);
57 
58  virtual bool isUpdateMessage(const DtPacket& packet) const;
59  virtual bool isRemovalMessage(const DtPacket& packet) const;
60 
62  virtual void createUpdate(const DtStateObject& object,const DtAbsoluteTime& time, std::list<DtPacket*>& packetlist) const;
63 
65  virtual DtPacket* createRemoval(const DtStateObject& object,const DtAbsoluteTime& time) const;
66 
67  virtual void setInputVersion(int disVersion);
68  virtual void setOutputVersion(int disVersion);
69 
70  protected:
71 
73  DtLgrDisMessageState(const DtLgrDisMessageState&);
74 
76  DtLgrDisMessageState& operator=(const DtLgrDisMessageState&);
77 
78  virtual void activateState();
79  virtual void deactivateState();
80 
81  protected:
82 
83  DtPduKindSet myStatePduKinds;
84 
85  int myInputVersion;
86  int myOutputVersion;
87  };
88 
89 }
90 
91 #endif
92 #endif

Document ID: Generated on Thu Apr 10 18:53:01 EDT 2014 from SVN revision 138105
Copyright © 2005-2012 VT MÄK. All Rights Reserved (www.mak.com)