MAK RTIspy API Documentation for HLA 1.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
partnerMgr.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 1998 MaK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************/
5 /*********************************************************************
6 ** $RCSfile: partnerMgr.h,v $ $Revision: 1.3 $ $State: Exp $
7 *********************************************************************/
8 
9 #ifndef partnerMgr_H_
10 #define partnerMgr_H_
11 
12 #ifndef DtUNDOCUMENTED
13 
16 
17 #include "rtiMsConfig.h"
18 #include "partnerFederateMsg.h"
19 
20 class DtResignMsg;
21 class DtConnectionMgr;
22 class DtRtiMsg;
23 
25 {
29 };
30 
35 {
36 public:
37 
39  DtPartnerMgr(DtConnectionMgr* connectMgr);
40 
42  ~DtPartnerMgr();
43 
44 private:
45 
47  DtPartnerMgr(DtPartnerMgr const& );
48 
50  DtPartnerMgr& operator= (DtPartnerMgr const& );
51 
52 public:
53 
55  virtual void joinFederationExecution(
56  const char* federateType,
57  const char* executionName,
58  const char* federateName,
59  unsigned long flags);
60 
62  virtual void resign();
63 
65  virtual bool acceptMessage( const DtRtiMsg& msg );
66 
67 protected:
68 
70  virtual void sendJoinMessage(MAKRti::DtString federateType,
71  MAKRti::DtString fedexName, MAKRti::DtString federateName);
72 
74  virtual void sendPartnerMessage(DtFederateHandle partnerFederate, DtPartnerResponse response);
75 
77  virtual void processOtherMessage(DtRtiMsg const& msg);
78 
80  virtual void processResignMessage(const DtResignMsg& msg);
81 
83  virtual void processPartnerMessage(const DtPartnerFederateMsg& msg);
84 
86  virtual void processPartnerAccept(const DtPartnerFederateMsg& msg);
87 
89  virtual void processPartnerConfirm(const DtPartnerFederateMsg& msg);
90 
92  virtual void processPartnerReject(const DtPartnerFederateMsg& msg);
93 
95  virtual bool partnerSlotAvailable() const;
96 
98  virtual bool waitingForConfirm() const;
99 
101  virtual bool isPartner(DtFederateHandle federate) const;
102 
105  virtual bool isPending(DtFederateHandle federate) const;
106 
109  virtual bool isConfirmed(DtFederateHandle federate) const;
110 
112  virtual void acceptPartner(DtFederateHandle federate, bool confirmed = false);
113 
115  virtual void confirmPartner(DtFederateHandle federate);
116 
119  virtual void removePartner(DtFederateHandle federate);
120 
123  virtual void removePendingPartner(DtFederateHandle federate);
124 
127  virtual void removeConfirmedPartner(DtFederateHandle federate);
128 
130  virtual bool isMe(DtFederateHandle federate) const;
131 
133  virtual DtFederateHandle federateHandle() const;
134 
135 protected:
136 
139 
142 
145 
147  std::vector<DtFederateHandle> myPartners;
148 
150  std::vector<DtFederateHandle> myPendingPartners;
151 
153  std::vector<DtFederateHandle> myConfirmedPartners;
154 
157 };
158 
159 #endif // DtUNDOCUMENTED
160 #endif // partnerMgr_H_

Document ID: Generated on Wed Mar 11 20:26:49 EDT 2015 from SVN revision 150939
Copyright © 2005-2015 VT MÄK Inc. All Rights Reserved (www.mak.com)