7 #ifndef physicalEntityEncoder_H_
8 #define physicalEntityEncoder_H_
107 static void encodeArticulatedParametersArrayPre09(
109 RTI::AttributeHandleValuePairSet* avList,
110 RTI::AttributeHandle attrHandle);
153 static void convertToRPR1_0(
158 static void encodeAttachedParts(
163 static void setArticulatedPartDeadReckoningEnabled(
bool enable);
164 static bool articulatedPartDeadReckoningEnabled();
175 #define DtDEFINE_SIMPLE_PHYS_ENTITY_ATTR_ENCODER( \
176 attrName, netType, inspector) \
177 DtDEFINE_SIMPLE_ATTR_ENCODER(DtPhysicalEntityEncoder, \
178 DtEntityStateRepository, \
179 attrName, netType, inspector)
186 #define DtDEFINE_SIMPLE_PHYS_ENTITY_ATTR_CHECKER( \
187 attrName, inspector) \
188 DtDEFINE_SIMPLE_ATTR_CHECKER(DtPhysicalEntityEncoder, \
189 DtEntityStateRepository, \
195 #define DtDEFINE_LIGHT_ATTR_CHECKER( \
196 encClass, attrName, arg1) \
197 bool encClass::need##attrName( \
198 const DtEntityStateRepository& stateRep, \
199 const DtEntityStateRepository& asSeenByRemote) \
201 return (bool) (stateRep.lightState(arg1) != asSeenByRemote.lightState(arg1)); \
204 #define DtDEFINE_LIGHT_ATTR_ENCODER( \
205 encClass, attrName, arg1) \
206 void encClass::encode##attrName( \
207 const DtEntityStateRepository& rep, \
208 RTI::AttributeHandleValuePairSet* attrs, \
209 RTI::AttributeHandle attrHandle) \
211 DtNetBoolean netVal; \
212 netVal = rep.lightState(arg1); \
213 attrs->add(attrHandle, (char*) &netVal, sizeof(DtNetBoolean)); \