MAK RTIspy API Documentation for HLA 1516
execObserver.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2008 MaK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 /*******************************************************************************
6 ** $RCSfile: execObserver.h,v $ $Revision: 1.3 $ $State: Exp $
7 *******************************************************************************/
8 
11 
12 #ifndef DtRtiexecObserver_H_
13 #define DtRtiexecObserver_H_
14 
15 #include "rtiMsConfig.h"
16 #include "rtiMsg.h"
17 #include "rtiMsgCbMgr.h"
18 #include "execObserverMgr.h"
19 
20 class DtFedExec;
21 class DtFederate;
22 namespace MAKRti
23 {
24  class DtInetAddr;
25 }
26 class DtSyncPt;
27 
31 {
32 
33 public:
34 
37 
39  virtual ~DtRtiexecObserver();
40 
42  virtual void setMgr( DtRtiexecObserverMgr* mgr );
43 
45  virtual void removeMgr();
46 
48  virtual void startObservation() {};
49 
52 
53 
54  virtual void processFedExCreatedEvent( DtFedExec* exec ) {}
55 
57  virtual void processFedExDestroyedEvent( DtFedExec* exec ) {}
58 
60  virtual void processFederateJoinedEvent( DtFedExec* exec, DtFederate* federate ) {}
61 
63  virtual void processFederateResignedEvent( DtFedExec* exec, DtFederate* federate ) {}
64 
66  virtual void processSyncPtRegisteredEvent( DtFedExec* exec, DtSyncPt* pt ) {}
67 
70 
72  virtual void processSyncPtAchievedEvent( DtFedExec* exec, DtFederate* fed, DtSyncPt* pt ) {}
73 
75  virtual void processFederateDisconnectedEvent( DtFedExec* exec, DtFederate* fed ) {}
76 
79 
82 
84  virtual void processLogFileUpdatedEvent( const MAKRti::DtFilename& logFile ) {}
85 
87  virtual void processWebServerUpdatedEvent( const MAKRti::DtInetAddr& webSpyIpAddr,
88  int webSpyPort ) {}
90 
93  virtual void addRtiMsgCallback( DtRtiMsgKind msgKind,
94  DtRtiMsgCbMgr::DtCallbackFcn fcn, bool isMomCallback = false );
95 
98  virtual void removeRtiMsgCallback( DtRtiMsgKind msgKind,
99  DtRtiMsgCbMgr::DtCallbackFcn fcn, bool isMomCallback = false );
100 
103  virtual void addTickCallback( DtTickCbFn fcn, DtTime interval );
104 
106  virtual void removeTickCallback( DtTickCbFn fcn );
107 
110  virtual void addTickCallback( DtTickWithExecCbFn fcn, DtTime interval );
111 
113  virtual void removeTickCallback( DtTickWithExecCbFn fcn );
114 
116  virtual unsigned long connectionId() const;
117 
118 protected:
119 
121  virtual void addCallbacks() = 0;
122 
125  virtual void removeCallbacks() = 0;
126 
127 private:
128 
130  DtRtiexecObserver( const DtRtiexecObserver& orig );
131 
133  DtRtiexecObserver& operator=( const DtRtiexecObserver& orig );
134 
135 protected:
136 
139 
140 };
141 
142 
143 inline unsigned long DtRtiexecObserver::connectionId() const
144 {
145  if( myMgr )
146  {
147  return myMgr->connectionId();
148  }
149  else
150  {
151  return 0;
152  }
153 }
154 
155 
156 #endif
157 
158 

Document ID: Generated on Tue May 7 16:26:47 EDT 2013 from SVN revision 126903
Copyright © 2005-2013 VT MÄK Inc. All Rights Reserved (www.mak.com)