VR-Link API Documentation for DIS
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
attributeChangeReqInter.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 1992-2010 MAK Technologies, Inc
3 ** All rights reserved.
4 *********************************************************************/
5 
6 
7 #ifndef attributeChangeReqInter_H_
8 #define attributeChangeReqInter_H_
9 
10 #if DtHLA
11 
12 #include "interactionWithEncDec.h"
13 #include "hostStructs.h"
14 #include <matrix/vlMath.h>
16 #include "datumRecordSet.h"
17 
18 
19 
23 
24 class DT_DLL_VL DtAttributeChangeReqInter;
26 
27 
29 typedef void (*DtAttributeChangeReqInterCb)(DtAttributeChangeReqInter* inter,
30  void* usr);
31 
32 
33 
37 class DT_DLL_VL DtAttributeChangeReqInter : public DtInteractionWithEncDec
38 {
39 public:
40 
42  DtAttributeChangeReqInter();
43 
45  virtual ~DtAttributeChangeReqInter();
46 
48  DtAttributeChangeReqInter(const DtAttributeChangeReqInter& orig);
49 
51  DtAttributeChangeReqInter& operator=(const DtAttributeChangeReqInter& orig);
52 
54  virtual void printData() const;
55 
57  virtual void printDataToStream(std::ostream& stream) const;
58 
60  virtual const DtGlobalObjectDesignatorList& objectIDs() const;
61  virtual DtGlobalObjectDesignatorList* objectIDs();
62 
64  virtual void setNumIds(DtU8 numIds);
65  virtual DtU8 numIds() const;
66 
68  virtual void setNthObjectId(DtInt32 idIndex,
69  const DtGlobalObjectDesignator& id);
70  virtual const DtGlobalObjectDesignator& nthObjectId(DtInt32 idIndex) const;
71 
73  virtual void setNumPairs(DtU32 pairs);
74  virtual DtU32 numPairs() const;
75 
76 #if DtHLA_1516
77  virtual void setAvMap( const RTI::AttributeHandleValueMap& atts);
78  virtual const RTI::AttributeHandleValueMap& avMap() const;
79 #else
80  virtual void setAvPairSet( const RTI::AttributeHandleValuePairSet& atts);
81  virtual const RTI::AttributeHandleValuePairSet& avPairSet() const;
82 #endif
83 
85 #if DtHLA_1516
86  virtual void setAttributeHandle(DtU32 index, RTI::AttributeHandle handle);
87  virtual RTI::AttributeHandle attributeHandle(DtU32 index) const;
88 #else
89  virtual void setAttributeHandle(DtU32 index, DtU32 handle);
90  virtual DtU32 attributeHandle(DtU32 index) const;
91 #endif
92 
94  virtual void setAttributeValueLength(DtU32 index, DtU32 length);
95  virtual DtU32 attributeValueLength(DtU32 index) const;
96 
97  virtual void setAttributeValue(DtU32 index, const char* usr);
98  virtual const char* attributeValue(DtU32 index) const;
99 
105  virtual DtDatumRecordSet* datumRecSet();
106  virtual const DtDatumRecordSet* datumRecSet() const;
107 
109  virtual const char* name() const;
110 
111 public:
112 
115  static DtInteraction* create();
116 
119  static void addCallback(DtExerciseConn* conn,
120  DtAttributeChangeReqInterCb cb, void* usr,
121  DtDDMRegionSP region = DtDDMRegionSP());
122  static void removeCallback(DtExerciseConn* conn,
123  DtAttributeChangeReqInterCb cb, void* usr,
124  DtDDMRegionSP region = DtDDMRegionSP());
125 
126 protected:
127 
128  DtGlobalObjectDesignatorList myObjectList;
129  DtGlobalObjectDesignator myNthId;
130  DtDatumRecordSet myRecordSet;
131 
132 #if DtHLA_1516
133  mutable RTI::AttributeHandleValueMap myMap;
134 #endif
135 
136 };
137 
138 inline const char* DtAttributeChangeReqInter::name() const
139 {
140  return "DtAttributeChangeReqInter";
141 }
142 
143 #endif
144 #endif
145 
DtInteraction is an base class for representing DIS PDUs which don&#39;t have state.
Definition: interactionDIS.h:24
Instances of DtExerciseConn are used to provide an application&#39;s interface or connection to the netwo...
Definition: exerciseConnDIS.h:62
#define DT_DLL_VL
Definition: vlMachineTypes.h:108
This file defines math constants and methods which may be useful in simulations.
unsigned char DtU8
An eight bit unsigned integer value.
Definition: vlMachineTypes.h:137
Instances of DtGlobalObjectDesignatorList are list of globally significant object identifiers...
Definition: globalObjectDesignatorList.h:21
Instances of DtEntityIdentifier are used as a unique ID for entities in DIS.
Definition: entityIdentifier.h:31
This file is deprecated - Please see simulationAddress.h, entityIdentifier.h, entityType.h, burstDescriptor.h, and NetStructs.h.
Definition: datumRecordSet.h:45
long int DtInt32
A 32 bit integer value.
Definition: vlMachineTypes.h:156
unsigned long DtU32
A 32 bit unsigned integer value.
Definition: vlMachineTypes.h:153
This class declares DtGlobalObjectDesignatorList.

Document ID: Generated on Thu Sep 19 02:12:35 EDT 2024 from SVN revision 269601
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)