MAK RTIspy API Documentation for HLA 1.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
forwarderFaultManager.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 2005 MaK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************/
5 /*********************************************************************
6 ** $RCSfile: forwarderFaultManager.h,v $ $Revision: 1.4 $ $State: Exp $
7 *********************************************************************/
10 
11 #ifndef DtForwarderFaultManager_H_
12 #define DtForwarderFaultManager_H_
13 
14 #include "rtiMsConfig.h"
15 #include <vector>
16 #include <map>
17 #include <vlutil/vlTime.h>
18 
19 class DtConnectionMgr;
20 class DtJoinMsg;
22 class DtForwarderPingMsg;
23 
24 
31 {
32 private:
35 public:
36 
39  MAKRti::DtTime heartbeatPeriod );
40 
42  virtual ~DtForwarderFaultManager();
43 
47  virtual void tick();
48 
49 public:
50 
52  static void processJoin(const DtJoinMsg& msg, void* usr);
53 
55  static void processConnectionLost(const DtForwarderConnectionLostMsg& msg, void* usr);
56 
58  static void processPing(const DtForwarderPingMsg& msg, void* usr);
59 
60 protected:
61 
62  typedef std::vector< unsigned long > DtConnIdList;
63  typedef std::map< unsigned long, DtConnIdList > DtForwarderIdToConnIdsMap;
64 
65 protected:
66 
69  virtual void processJoin(const DtJoinMsg& msg);
70 
73  virtual void processConnectionLost(const DtForwarderConnectionLostMsg& msg);
74 
77  virtual void processPing(const DtForwarderPingMsg& msg);
78 
80  virtual void pingAllForwarders() const;
81 
83  virtual void pingForwarder( unsigned long forwarderId ) const;
84 
86  virtual void resignForwarder( unsigned long forwarderId ) const;
87 
89  virtual void disconnectFederates( const DtConnIdList& federates ) const;
90 
91 protected:
92 
95  MAKRti::DtClock myClock;
96  MAKRti::DtTime myHeartbeatPeriod;
97  MAKRti::DtTime myLastHeartbeat;
98 };
99 
100 #endif

Document ID: Generated on Mon Mar 21 09:41:37 EDT 2016 from SVN revision 163228
Copyright © 2005-2015 VT MÄK Inc. All Rights Reserved (www.mak.com)