00001
00055 #if !defined(_CIGI_ENTITY_CONTROL_V2_INCLUDED_)
00056 #define _CIGI_ENTITY_CONTROL_V2_INCLUDED_
00057
00058
00059
00060 #include "CigiBaseEntityCtrl.h"
00061
00062
00063
00064
00065
00066
00069 class CIGI_SPEC CigiEntityCtrlV2 : public CigiBaseEntityCtrl
00070 {
00071
00072 public:
00073
00074
00077 enum EntityStV2Grp
00078 {
00079 LoadHideV2=0,
00080 LoadShowV2=1,
00081 UnloadV2=2
00082 };
00083
00084
00087 enum EffectStV2Grp
00088 {
00089 StopV2=0,
00090 PlayV2=1,
00091 RestartV2=2,
00092 };
00093
00094
00095
00096
00097
00100 CigiEntityCtrlV2();
00101
00102
00105 virtual ~CigiEntityCtrlV2();
00106
00107
00108
00109
00110
00111
00122 virtual int Pack(CigiBasePacket * Base, Cigi_uint8 * Buff, void *Spec) const;
00123
00124
00134 virtual int Unpack(Cigi_uint8 * Buff, bool Swap, void *Spec);
00135
00136
00137
00138
00139
00140
00141
00142
00152 int SetOpacity(const float OpacityIn, bool bndchk=true);
00153
00154
00160 float GetOpacity(void) const { return(Opacity); }
00161
00162
00171 int SetTemp(const float Temp, bool bndchk=true)
00172 {
00173 Temperature = Temp;
00174 return(CIGI_SUCCESS);
00175 }
00176
00177
00182 float GetTemp(void) const { return(Temperature); }
00183
00184
00185
00186
00187
00196 int SetHeading(const float Heading, bool bndchk=true);
00197
00198
00203 float GetHeading(void) const { return(Yaw); }
00204
00205
00206
00207
00208
00216 int SetAlt(const double Alt, bool bndchk=true)
00217 {
00218 AltOrZoff = Alt;
00219 return(CIGI_SUCCESS);
00220 }
00221
00222
00226 double GetAlt(void) const { return(AltOrZoff); }
00227
00228
00229
00230
00231
00240 int SetZoff(const double Zoff, bool bndchk=true)
00241 {
00242 AltOrZoff = Zoff;
00243 return(CIGI_SUCCESS);
00244 }
00245
00246
00251 double GetZoff(void) const { return(AltOrZoff); }
00252
00253
00254
00255
00256
00267 int SetEntityState(const EntityStV2Grp EntityStateIn, bool bndchk=true);
00268
00269
00276 EntityStV2Grp GetEntityState(void) const { return((EntityStV2Grp)EntityState); }
00277
00278
00279
00280
00281
00293 int SetEffectState(const EffectStV2Grp EffectStateIn, bool bndchk=true);
00294
00295
00303 EffectStV2Grp GetEffectState(void) const;
00304
00305
00306 protected:
00307
00308 static const EffectStV2Grp V3toV2[4];
00309 static const AnimationStateGrp V2toV3[3];
00310
00311 };
00312
00313 #endif // #if !defined(_CIGI_ENTITY_CONTROL_V2_INCLUDED_)