14 #include <matrix/vlTaitBryan.h>
15 #include <matrix/vlVector.h>
16 #include <vlutil/vlString.h>
17 #include <vlpi/disEnums.h>
24 #define DtDEC_APPEARANCE( P, p, T, N, n, E ) \
26 void set##N( const T& val ) {\
27 set##P##AppearanceAttribute( E, DtAppearAttrVal( val << E##BitShift ) );\
29 T n() const { return (T)( p##AppearanceAttribute(E) >> E##BitShift ); }\
63 virtual std::ostream& printDataToStream( std::ostream& stream )
const;
84 virtual void setGeneralAppearanceAttribute(
85 DtAppearAttribute attr, DtAppearAttrVal val );
87 virtual DtAppearAttrVal generalAppearanceAttribute(
88 DtAppearAttribute attr )
const;
91 percentComplete, DtAppObjectPercentComplete );
93 damagedAppearance, DtAppObjectDamage );
95 objectPreDistributed, DtAppObjectPredistributed );
97 deactivated, DtAppObjectState );
99 smoking, DtAppObjectSmoking );
101 flaming, DtAppObjectFlaming );
109 virtual void setSpecificAppearanceAttribute(
110 DtAppearAttribute attr, DtAppearAttrVal val );
112 virtual DtU32 specificAppearanceAttribute(
113 DtAppearAttribute attr )
const;
118 DtDEC_APPEARANCE( Specific, specific, DtTankDitchBreachStatus, BreachStatus,
119 breachStatus, DtAppObjectTankDitchBreach );
121 breachLength, DtAppObjectTankDitchBreachLength );
126 virtual bool setSegmentBreached(
int index,
bool state );
127 virtual bool segmentBreached(
int index,
bool& state )
const;