VR-Link API Documentation for HLA 1.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
transferControlInteractionHLA.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 1992-2025 MAK Technologies, Inc
3 ** All rights reserved.
4 *********************************************************************/
5 
6 
7 #ifndef transferControlInteractionHLA_H_
8 #define transferControlInteractionHLA_H_
9 
10 #if DtHLA
11 
12 #include "interactionWithData.h"
13 #include "vlpi/recordSetList.h"
14 
18 
21 
23 typedef void (*DtTransferControlInteractionCb)
24  (DtTransferControlInteraction* inter, void *user);
25 
30 
32 {
33 public:
34 
37 
40  (const DtTransferControlInteraction& other);
41 
44 
47  (const DtTransferControlInteraction& other);
48 
50  virtual void printData() const;
51 
53  virtual void printDataToStream(std::ostream& stream) const;
54 
56  virtual void setOriginatingEntityID(const DtEntityIdentifier& entity);
57  virtual const DtEntityIdentifier& originatingEntityID() const;
58 
60  virtual void setReceivingEntityID(const DtEntityIdentifier &entity);
61  virtual const DtEntityIdentifier receivingEntityID() const;
62 
64  virtual void setRequestID(DtU32 id);
65  virtual DtU32 requestID() const;
66 
67 
69  virtual void setTransferType(const DtTransferType type);
70  virtual const DtTransferType transferType() const;
71 
73  virtual void setTransferredEntityID(const DtGlobalObjectDesignator &);
74  virtual const DtGlobalObjectDesignator &transferredEntityID() const;
75 
79  virtual void setNumRecordSets(DtU32 number);
80  virtual DtU32 numRecordSets() const;
81 
84  virtual bool setRecordSet(int index, const DtRecordSet &set);
85  virtual const DtRecordSet &recordSet(int index,
86  bool *valid = NULL);
87 
89  virtual bool getRecordSet(int index, DtRecordSet& recSet) const;
90 
92  virtual const DtRecordSetList &recordSetList() const;
93  virtual DtRecordSetList *recordSetList();
94 
97  virtual const char* name() const;
98 
99 public:
102  static DtInteraction* create();
103 
106  static void addCallback(DtExerciseConn *conn,
107  DtTransferControlInteractionCb cb, void *usr,
108  DtDDMRegionSP region = DtDDMRegionSP());
109  static void removeCallback(DtExerciseConn *conn,
110  DtTransferControlInteractionCb cb, void *usr,
111  DtDDMRegionSP region = DtDDMRegionSP());
112 
113 protected:
114 
121 
122 };
123 
127 inline void
129  (const DtEntityIdentifier& id)
130 {
131  myOriginatingEnt = id;
132 }
133 
134 inline const DtEntityIdentifier &
136 {
137  return myOriginatingEnt;
138 }
139 
140 inline void
142  const DtEntityIdentifier &id)
143 {
144  myReceivingEnt = id;
145 }
146 
147 inline const DtEntityIdentifier
149 {
150  return myReceivingEnt;
151 }
152 
153 inline void
155 {
156  myRequestId = id;
157 }
158 
159 inline DtU32
161 {
162  return myRequestId;
163 }
164 
165 inline void
167 {
168  myTransferType = type;
169 }
170 
171 inline const DtTransferType
173 {
174  return myTransferType;
175 }
176 
177 inline void
179  const DtGlobalObjectDesignator &id)
180 {
181  myTransferEntity = id;
182 }
183 
184 inline const DtGlobalObjectDesignator&
186 {
187  return myTransferEntity;
188 }
189 
190 inline const DtRecordSetList &
192 {
193  return myRecordSetList;
194 }
195 
196 inline DtRecordSetList *
198 {
199  return &myRecordSetList;
200 }
201 
202 inline const char*
204 {
205  return "DtTransferControlInteraction";
206 }
207 
208 #endif
209 #endif
210 
DtEntityIdentifier myOriginatingEnt
Definition: transferControlInteractionHLA.h:115
DtInteraction is an abstract base class for representing HLA interactions (or events) (as opposed to ...
Definition: interactionHLA.h:33
DtTransferType myTransferType
Definition: transferControlInteractionHLA.h:119
virtual const DtEntityIdentifier & originatingEntityID() const
Definition: transferControlInteractionHLA.h:135
Instances of DtExerciseConn are used to provide an application's interface or connection to the netwo...
Definition: exerciseConnHLA.h:61
virtual void setTransferType(const DtTransferType type)
Set/Get the transfer Type.
Definition: transferControlInteractionHLA.h:166
#define DT_DLL_VL
Definition: vlMachineTypes.h:108
Instances of DtRecordSetList are lists of RecordSets.
Definition: vlpi/recordSetList.h:17
virtual const DtTransferType transferType() const
Definition: transferControlInteractionHLA.h:172
virtual DtU32 requestID() const
Definition: transferControlInteractionHLA.h:160
virtual const DtGlobalObjectDesignator & transferredEntityID() const
Definition: transferControlInteractionHLA.h:185
This file provides a declaration of the class DtInteractionWithData.
static void removeCallback(DtExerciseConn *conn, const std::vector< DtString > *classes, DtReceiveInteractionCb cb, void *usr, DtDDMRegionSP region=DtDDMRegionSP())
Instances of DtRecordSet are used to contain the record sets used by the PDU classes which inherit fr...
Definition: recordSet.h:38
virtual void printData() const
Print the interaction&#39;s data to DtInfo.
Definition: interactionHLA.h:358
DtTransferType
Transfer Control Request PDU enums.
Definition: disEnums.h:2507
virtual void setReceivingEntityID(const DtEntityIdentifier &entity)
Set/Get receiver ID.
Definition: transferControlInteractionHLA.h:141
virtual const DtEntityIdentifier receivingEntityID() const
Definition: transferControlInteractionHLA.h:148
virtual void printDataToStream(std::ostream &stream) const
Print the interaction&#39;s data to the stream.
Definition: interactionHLA.h:366
virtual const char * name() const =0
Name of the interaction. (Not necessarily the ClassName from the FOM.)
std::shared_ptr< DtDDMRegion > DtDDMRegionSP
Definition: region13.h:31
DtGlobalObjectDesignator myTransferEntity
Definition: transferControlInteractionHLA.h:118
DtEntityIdentifier myReceivingEnt
Definition: transferControlInteractionHLA.h:116
static void addCallback(DtExerciseConn *conn, const std::vector< DtString > *classes, DtReceiveInteractionCb cb, void *usr, DtDDMRegionSP region=DtDDMRegionSP())
Register/Deregister callback function cb with conn, on all interaction class name (char*) contained i...
Instances of DtEntityIdentifier are used as a unique ID for entities in DIS.
Definition: entityIdentifier.h:31
virtual void setRequestID(DtU32 id)
Set/Get request ID.
Definition: transferControlInteractionHLA.h:154
virtual const DtRecordSetList & recordSetList() const
They exist for the mapper to use for conversion to net data.
Definition: transferControlInteractionHLA.h:191
virtual const char * name() const
name of the interaction.
Definition: transferControlInteractionHLA.h:203
class DtInteractionWithEncDec:
Definition: interactionWithEncDec.h:44
unsigned long DtU32
A 32 bit unsigned integer value.
Definition: vlMachineTypes.h:153
Instances of DtString are used to represent strings.
Definition: vlString.h:36
virtual void setTransferredEntityID(const DtGlobalObjectDesignator &)
Set/Get the transferEntity.
Definition: transferControlInteractionHLA.h:178
class DtTransferControlInteraction:
Definition: transferControlInteractionHLA.h:31
void(* DtTransferControlInteractionCb)(DtTransferControlInteraction *inter, void *user)
TransferControl interaction callback function signature.
Definition: transferControlInteractionHLA.h:24
virtual void setOriginatingEntityID(const DtEntityIdentifier &entity)
Set/Get originator ID.
Definition: transferControlInteractionHLA.h:129
DtRecordSetList myRecordSetList
Definition: transferControlInteractionHLA.h:120
DtU32 myRequestId
Definition: transferControlInteractionHLA.h:117

Document ID: Generated on Thu Oct 16 00:12:25 EDT 2025 from SVN revision 280738
Copyright © 1992-2025 MAK Technologies. All Rights Reserved (www.mak.com)