MAK RTIspy API Documentation for HLA 1516
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
execConnectMsg.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 1998 MaK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************/
5 /*********************************************************************
6 ** $RCSfile: execConnectMsg.h,v $ $Revision: 1.9 $ $State: Exp $
7 *********************************************************************/
8 
11 
12 #ifndef DtRtiExecConnectMsg_H_
13 #define DtRtiExecConnectMsg_H_
14 
15 #include "rtiMsg.h"
16 #include <vlutil/vlUtil.h>
17 #include <vlutil/vlInetAddr.h>
18 #include "netExecConnectMsg.h"
19 
20 class DtConnectionMgr;
22 
23 typedef void (*DtRtiExecConnectCb)(const DtRtiExecConnectMsg& inter, void* usr);
24 
26 {
27 public:
28 
30  DtRtiExecConnectMsg(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
31 
34  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
35 
37  DtRtiExecConnectMsg(DtHandle handle, const MAKRti::DtInetAddr& rootFwAddr,
38  int rootFwPort, const MAKRti::DtString& hostName, bool fullyCompliant,
39  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
40 
42  virtual ~DtRtiExecConnectMsg();
43 
45  virtual DtRtiMsg* clone(bool copy = true) const;
46 
48  virtual void set(DtHandle handle, const MAKRti::DtInetAddr& rootFwAddr,
49  int rootFwPort, const MAKRti::DtString& hostName, bool fullyCompliant);
50 
52  virtual DtHandle connectionHandle() const;
53  virtual void setConnectionHandle(DtHandle handle);
54 
56  virtual MAKRti::DtInetAddr rootForwarderAddr() const;
57  virtual void setRootForwarderAddr(const MAKRti::DtInetAddr& addr);
58 
60  virtual int rootForwarderPort() const;
61  virtual void setRootForwarderPort(int port);
62 
64  virtual MAKRti::DtInetUtils::DtInetAddrFamily addressFamily() const;
65  virtual void setAddressFamily(MAKRti::DtInetUtils::DtInetAddrFamily fam);
66 
68  virtual void setHostName(const MAKRti::DtString& name);
69  virtual MAKRti::DtString hostName() const;
70 
72  virtual void setFullyCompliant(bool fullCompliance);
73  virtual bool fullyCompliant() const;
74 
75 
77  virtual void printData(DtLogicalTimeFactory* logicalTimeFactory) const;
78 
79 public:
80 
82  static DtRtiMsg* create(const DtNetMsgHeader* initial,
83  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
84 
85  static DtRtiMsg* create(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
86 
88  static void addCallback(DtConnectionMgr* conn,
89  DtRtiExecConnectCb cb, void* usr, bool isMomCallback=false);
90  static void removeCallback(DtConnectionMgr* conn,
91  DtRtiExecConnectCb cb, void* usr, bool isMomCallback=false);
92 
93 protected:
94 
96  virtual DtNetExecConnectMsg* netExecConnectMsg();
97  virtual const DtNetExecConnectMsg* netExecConnectMsg() const;
98 
101 
103  virtual char* hostNamePtr();
104  virtual const char* hostNamePtr() const;
105  virtual int hostNameSize() const;
106 
108  virtual int minSize() const;
109 
111  virtual DtRtiExecConnectMsg* self() const;
112 
113 protected:
114 
115 };
116 
118 {
119  return const_cast<DtRtiExecConnectMsg*>( this );
120 }
121 
122 #endif
123 
Definition: netExecConnectMsg.h:20
virtual DtRtiExecConnectMsg * self() const
Casts away const-ness.
Definition: execConnectMsg.h:117
DtRtiMsgKind
Definition: rtiMsgKind.h:9
Definition: netRtiMsgHdr.h:23
!DtIFSPEC1516
Definition: fedTimeFactory.h:190
virtual void printData(DtLogicalTimeFactory *logicalTimeFactory) const
void(* DtRtiExecConnectCb)(const DtRtiExecConnectMsg &inter, void *usr)
Definition: execConnectMsg.h:23
Instances of DtConnectionMgr manage the communication objects that the RTI will use to either communi...
Definition: connectMgr.h:60
DtRtiMsg is the base class for messages between RTI components.
Definition: rtiMsg.h:45
Definition: execConnectMsg.h:25
virtual DtRtiMsg * clone(bool copy=true) const =0
Return a copy/empty object of the same type as this.
virtual DtRtiMsgKind internalDtRtiMsgKind()=0
unsigned long DtHandle
The internal types.
Definition: internalTypes.h:25
#define DT_DLL_LRC
Definition: rtiMsConfig.h:126

Document ID: Generated on Thu May 11 15:55:32 EDT 2023 from SVN revision 254743
Copyright © 2005-2020 MAK Technologies Inc. All Rights Reserved (www.mak.com)