9 #ifndef hlaMessageFactory_H_
10 #define hlaMessageFactory_H_
22 #include <vlutil/vlNetTypes.h>
24 #include <vl/rtiCompatibility.h>
25 #include <vl/hlaObj.h>
68 static bool decodeInteractionRegionID(
const DtPacket *packet,
DtRegionID& regionID,
unsigned int index = 0);
72 static bool decodeObjectRegionID(
const DtPacket *packet,
DtRegionID& regionID,
unsigned int index = 0 );
83 static unsigned int decodeInteractionRegionIdSet(
const DtPacket *packet,
DtRegionIDSet& regionIDSet );
89 static const char* decodeObjectName(
const DtPacket* packet,
int& length);
92 static const char* decodeObjectTag(
const DtPacket* packet,
int& length);
95 static const char* decodeInteractionTag(
const DtPacket* packet,
int& length);
133 static size_t calculateInteractionSize(
139 static size_t calculateInteractionSize(
147 static void encodeInteraction(
DtPacket&,
156 static void encodeInteraction(
DtPacket&,
166 static void decodeParameterHandles(
const DtPacket* packet,std::vector<DtLgrHlaHandle>& handles);
167 static void setParameterHandles(
DtPacket* packet,
const std::vector<DtLgrHlaHandle>& handles);
172 static void decodeAttributeHandles(
const DtPacket* packet,std::vector<DtLgrHlaHandle>& handles);
173 static void setAttributeHandles(
DtPacket* packet,
const std::vector<DtLgrHlaHandle>& handles);
178 static DtDDMRegionSP decodeInteractionDDMRegion(
const DtPacket *packet,
180 DtIDRegionMap* regionCache=0,
bool updateRegionExtents=
false);
185 static DtDDMRegionSP decodeObjectDDMRegion(
const DtPacket *packet,
187 DtIDRegionMap* regionCache=0,
bool updateRegionExtents=
false);
193 static unsigned int decodeInteractionDDMRegionSet(
const DtPacket *packet,
195 DtIDRegionMap* regionCache=0,
bool updateRegionExtents=
false );
201 static unsigned int decodeObjectDDMRegionSet(
const DtPacket *packet,
203 DtIDRegionMap* regionCache=0,
bool updateRegionExtents=
false );
207 static unsigned int decodeInteractionDDMRegionDescSet(
const DtPacket *packet,
212 static unsigned int decodeObjectDDMRegionDescSet(
const DtPacket *packet,
218 static int bufferSizeOfMap(
const RTI::AttributeHandleValueMap& map);
219 static int bufferSizeOfMap(
const RTI::ParameterHandleValueMap& map);
221 static int bufferSizeOfSet(
const RTI::ParameterHandleValuePairSet&
set);
222 static int bufferSizeOfSet(
const RTI::AttributeHandleValuePairSet&
set);
228 static int bufferSizeOfRegionDescriptorSet(
const DtRegionDescSet&
set );
240 static void getRegionExtents(
const char* data,
241 DtExtentDescSet& extentSet,
unsigned int numExtents, std::set<DtString>* dimensionNameSet=0);
248 static void updateRegion(DtDDMRegionSP region,
DtExtentDescSet& extentSet);
258 const void* buffer,
unsigned int memorySize,
int numItems);
261 const void* buffer,
unsigned int memorySize,
int numItems);
264 void* buffer,
unsigned int memorySize);
267 void* buffer,
unsigned int memorySize);
274 void *buffer,
unsigned int memorySize );