MAK RTIspy API Documentation for HLA 1516
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
federationStateInfo.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 2008 MaK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************/
5 /*******************************************************************************
6 ** $RCSfile: federationStateInfo.h,v $ $Revision: 1.8 $ $State: Exp $
7 *******************************************************************************/
8 
9 #ifndef federationStateInfo_H_
10 #define federationStateInfo_H_
11 
16 
17 #include "rtiVersion.h"
18 #include <vlutil/vlString.h>
19 #include <vlutil/vlInetAddr.h>
20 #include <map>
21 #include <set>
22 
26 {
27 public:
28  DtFederationInfo( MAKRti::DtString name = MAKRti::DtString::nullString(), int handle = -1,
29  MAKRti::DtString file = MAKRti::DtString::nullString(), bool testEn = true ) :
30  federationName( name ),
31  federationHandle( handle ),
32  fedFileName( file ),
33  testEnabled( testEn )
34  {}
35 
36  MAKRti::DtString federationName;
38  MAKRti::DtString fedFileName;
40 };
41 
46 {
47 public:
48  DtFederateTimeStateInfo( unsigned long connId = 0, MAKRti::DtString fedType = "",
49  MAKRti::DtString fedName = "", int handle = -1, MAKRti::DtString fedHostName = "",
50  MAKRti::DtInetAddr host = MAKRti::DtInetAddr(), DtHlaVersionId hlaVer = DtHla1516,
51  bool testEn = false, bool testInProg = false,
52  bool contTest = false, unsigned numInitTests = 0,
53  unsigned numTestReps = 0 ) :
54  connId( connId ),
55  federateType( fedType ),
56  federateName( fedName ),
57  federateHandle( handle ),
58  federateHostName( fedHostName ),
59  federateHost( host ),
60  hlaVersion( hlaVer ),
61  testEnabled( testEn ),
62  testInProgress( testInProg ),
63  continuousTest( contTest ),
64  numInitiatedTests( numInitTests ),
65  numTestReports( numTestReps ),
66  isRegulating( false ),
67  isConstrained( false ),
68  isReconnecting( false ),
69  isDisconnected( false ) {}
70 
71  bool operator==(const DtFederateTimeStateInfo& rhs) const
72  {
73  return ( connId == rhs.connId && federateType == rhs.federateType &&
74  federateName == rhs.federateName &&
75  federateHostName == rhs.federateHostName &&
76  federateHandle == rhs.federateHandle &&
77  federateHost == rhs.federateHost &&
78  hlaVersion == rhs.hlaVersion &&
79  testEnabled == rhs.testEnabled &&
80  testInProgress == rhs.testInProgress &&
81  continuousTest == rhs.continuousTest &&
82  numInitiatedTests == rhs.numInitiatedTests &&
83  numTestReports == rhs.numTestReports &&
84  isReconnecting == rhs.isReconnecting &&
85  isDisconnected == rhs.isDisconnected &&
86  isRegulating == rhs.isRegulating &&
87  isConstrained == rhs.isConstrained && lbtsString == rhs.lbtsString &&
88  lookAheadString == rhs.lookAheadString && timeString == rhs.timeString );
89  }
90  bool operator!=(const DtFederateTimeStateInfo& rhs) const
91  {
92  return !(*this == rhs);
93  }
94 
95  unsigned long connId;
96  MAKRti::DtString federateType;
97  MAKRti::DtString federateName;
98  MAKRti::DtString federateHostName;
100  MAKRti::DtInetAddr federateHost;
102 
107  unsigned numTestReports;
108 
111 
114 
115  MAKRti::DtString lbtsString;
116  MAKRti::DtString lookAheadString;
117  MAKRti::DtString timeString;
118 
120 };
121 
122 // Related typedefs
123 typedef std::map< int, DtFederateTimeStateInfo > DtFederateStateByHandleMap;
124 typedef std::pair< std::set< int >, std::set< int > > DtPendingAchievedPair;
125 typedef std::map< MAKRti::DtString, DtPendingAchievedPair > DtSyncPtToAchievedFederatesMap;
127 {
129  DtFederateStateByHandleMap federates;
130  DtSyncPtToAchievedFederatesMap syncPts;
131  std::map< int, int > localFederates; // handles and component IDs
133 };
134 typedef std::map< MAKRti::DtString, DtFederationStateInfo > DtFederationStateByNameMap;
135 typedef std::map< int, MAKRti::DtString > DtFederationNameByHandleMap;
136 
137 
138 #endif

Document ID: Generated on Fri Sep 27 00:57:56 EDT 2019 from SVN revision 201708
Copyright © 2005-2018 VT MÄK Inc. All Rights Reserved (www.mak.com)