MAK RTIspy API Documentation for HLA Evolved
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
queryTransportMsg.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 2010 MaK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************/
5 /*********************************************************************
6 ** $RCSfile: queryTransportMsg.h,v $ $Revision: 1.0 $ $State: Exp $
7 *********************************************************************/
8 
11 
12 #ifndef DtQueryTransportMsg_H_
13 #define DtQueryTransportMsg_H_
14 
15 #include "rtiMsConfig.h"
16 #include "rtiMsg.h"
17 #include "netQueryTransportMsg.h"
18 #include "vlutil/vlFedTarget.h"
19 
20 class DtConnectionMgr;
22 typedef void (*DtQueryTransportCb)(const DtQueryTransportMsg& msg, void* usr);
23 
25 {
28 };
29 
31 {
32 public:
33 
35  DtQueryTransportMsg(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
36 
39  DtFederateHandle targetFed,
41  DtObjectInstanceHandle objHand,
42  DtAttributeHandle handle,
43  DtTransportType transType,
44  DtFederateHandle sendingFed = 0,
45  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
46 
49  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
50 
52  virtual ~DtQueryTransportMsg();
53 
55  virtual DtRtiMsg* clone(bool copy = true) const;
56 
58  virtual void set(
59  DtFederateHandle targetFed,
61  DtObjectInstanceHandle objHand,
62  DtAttributeHandle handle,
63  DtTransportType transType,
64  DtFederateHandle sendingFed = 0);
65 
67  virtual void setQueryTransportMsgKind(DtQueryTransMsgKind kind);
68  virtual DtQueryTransMsgKind queryTransportMsgKind() const;
69 
71  virtual void setObjHandle(DtObjectInstanceHandle id);
72  virtual DtObjectInstanceHandle objHandle() const;
73 
74  virtual void setClassHandle(DtObjectClassHandle handle);
75  virtual DtObjectClassHandle classHandle() const;
76 
78  virtual void setRecipientFederate(DtFederateHandle hand);
79  virtual DtFederateHandle recipientFederate() const;
80 
82  virtual void setSendingFederate(DtFederateHandle handle);
83  virtual DtFederateHandle sendingFederate() const;
84 
86  virtual void setHandle(const DtAttributeHandle& handle);
87  virtual const DtAttributeHandle& handle() const;
88 
90  virtual void setTransportType( DtTransportType type );
91  virtual DtTransportType transportationType() const;
92 
94  virtual void printData(DtLogicalTimeFactory* logicalTimeFactory) const;
95 
96 public:
97 
99  static DtRtiMsg* create(const DtNetMsgHeader* initial,
100  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
101 
103  static DtRtiMsg* create(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
104 
106  static void addCallback(DtConnectionMgr *conn,
107  DtQueryTransportCb cb, void *usr);
108  static void removeCallback(DtConnectionMgr *conn,
109  DtQueryTransportCb cb, void *usr);
110 
111 protected:
112 
114  virtual int tagFieldSize() const;
115 
117  virtual DtNetQueryTransportMsg* netQueryTransportMsg();
118  virtual const DtNetQueryTransportMsg* netQueryTransportMsg() const;
119 
122 
124  virtual int minSize() const;
125 
127  virtual DtQueryTransportMsg* self() const;
128 
129 protected:
130 
131  int myDirty;
133  DtTransportType myTransportType;
134 };
135 
136 
138 {
139  return const_cast<DtQueryTransportMsg*>( this );
140 }
141 
142 #endif
143 

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)