MAK RTIspy API Documentation for HLA 4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
reqObjMsg.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 1998 MaK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************/
5 /*********************************************************************
6 ** $RCSfile: reqObjMsg.h,v $ $Revision: 1.18 $ $State: Exp $
7 *********************************************************************/
8 
11 
12 #ifndef DtRequestMsg_H_
13 #define DtRequestMsg_H_
14 
15 #include "rtiMsg.h"
16 #include "netReqMsg.h"
17 
18 class DtConnectionMgr;
19 class DtRequestMsg;
21 
22 typedef void (*DtRequestCb)(const DtRequestMsg& inter, void* usr);
23 
25 {
29 };
30 
32 {
33 public:
34 
36  DtRequestMsg(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
37 
39  DtRequestType type,
40  DtHandle idOrClass,
41  const DtAttributeHandleSet& theSet,
43  DtHandle regionSetHandle = theDefaultRegionSetHandle,
44  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
45 
47  DtRequestMsg(const DtNetRequestMsg* netRepMsg,
48  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
49 
51  virtual ~DtRequestMsg();
52 
54  virtual DtRtiMsg* clone(bool copy = true) const;
55 
57  virtual void set(DtRequestType type, DtHandle idOrClass, const DtAttributeHandleSet& theSet, DtRtiApiTagConstRef tag, DtHandle regionSetHandle = theDefaultRegionSetHandle, bool adjustBufferSize = true);
58 
60  virtual DtRequestType requestType() const;
61  virtual void setRequestType(DtRequestType type);
62 
64 
66  virtual void setObjectClassHandle(DtObjectClassHandle hand);
67 
69  virtual DtObjectClassHandle objectClassHandle() const;
70 
72 
74  virtual void setId(DtObjectInstanceHandle id);
75 
77  virtual DtObjectInstanceHandle id() const;
78 
80  virtual void setRegionSet(DtHandle handleValue);
81  virtual DtHandle regionSet() const;
82 
84  virtual void setAttrHandles(const DtAttributeHandleSet& attrs);
85  virtual const DtAttributeHandleSet& attrHandles() const;
86 
88  virtual void setTag(DtRtiApiTagConstRef tag, bool adjustBufferSize = true);
89  virtual DtRtiApiTagConstRef tag() const;
90 
92  virtual void printData(DtLogicalTimeFactory* logicalTimeFactory) const;
93 
94 public:
95 
97  static DtRtiMsg* create(const DtNetMsgHeader* initial,
98  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
99 
101  static DtRtiMsg* create(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
102 
104  static void addCallback(DtConnectionMgr *conn,
105  DtRequestCb cb, void *usr, bool isMomCallback=false);
106  static void removeCallback(DtConnectionMgr *conn,
107  DtRequestCb cb, void *usr, bool isMomCallback=false);
108 
109 protected:
110 
112  virtual DtNetRequestMsg* netRequestMsg();
113  virtual const DtNetRequestMsg* netRequestMsg() const;
114 
117 
119  virtual int minSize(DtRtiApiTagConstPtr tag=NULL) const;
120 
122  virtual void setTagSize(int size);
123  virtual int tagSize() const;
124 
126  virtual char* tagPtr() const;
127 
129  virtual DtRequestMsg* self() const;
130 
131 protected:
132 
133  int myDirty;
136 };
137 
138 
140 {
141  return const_cast<DtRequestMsg*>( this );
142 }
143 
144 #endif
145 
DtAttributeHandleSet * myAttrs
Definition: reqObjMsg.h:134
DtRtiMsgKind
Definition: rtiMsgKind.h:9
Definition: netRtiMsgHdr.h:23
Definition: netReqMsg.h:20
int myDirty
Definition: reqObjMsg.h:133
Definition: fedTimeFactory.h:73
DtRtiApiVariableLengthData * DtRtiApiTagPtr
Definition: rtiApiTypes.h:100
virtual void printData(DtLogicalTimeFactory *logicalTimeFactory) const
Definition: reqObjMsg.h:28
DtRtiApiVariableLengthData const * DtRtiApiTagConstPtr
Definition: rtiApiTypes.h:99
DtRequestType
Definition: reqObjMsg.h:24
virtual DtRequestMsg * self() const
Casts away const-ness.
Definition: reqObjMsg.h:139
Definition: reqObjMsg.h:26
DtHandle DtObjectClassHandle
Definition: internalTypes.h:48
DtRtiApiVariableLengthData const & DtRtiApiTagConstRef
Definition: rtiApiTypes.h:98
Defines the internal representation of attribute/parameter handle sets.
Definition: attrHandSet.h:30
Instances of DtConnectionMgr manage the communication objects that the RTI will use to either communi...
Definition: connectMgr.h:67
DtRtiMsg is the base class for messages between RTI components.
Definition: rtiMsg.h:34
DtHandle DtObjectInstanceHandle
Definition: internalTypes.h:50
virtual DtRtiMsg * clone(bool copy=true) const =0
Return a copy/empty object of the same type as this.
void(* DtRequestCb)(const DtRequestMsg &inter, void *usr)
Definition: reqObjMsg.h:22
virtual DtRtiMsgKind internalDtRtiMsgKind()=0
unsigned long DtHandle
The internal types.
Definition: internalTypes.h:41
#define DT_DLL_LRC
Definition: rtiMsConfig.h:155
Definition: reqObjMsg.h:27
DtRtiApiTagPtr myTag
Definition: reqObjMsg.h:135
Definition: reqObjMsg.h:31

Document ID: Generated on Wed Jul 8 16:20:32 EDT 2026 from SVN revision 291616
Copyright © 2005-2025 MAK Technologies Inc. All Rights Reserved (www.mak.com)