Go to the
documentation of this file.
00001
00011
00012
00013 #if (_MSC_VER > 1000) || defined(SGI_COMPILER)
00014 #pragma once
00015 #endif
00016
00017 #ifndef __XSIPARTICLE_H__
00018 #define __XSIPARTICLE_H__
00019
00020 #include <xsi_siobject.h>
00021 #include <xsi_value.h>
00022 #include <xsi_status.h>
00023 #include <xsi_vector3.h>
00024 #include <xsi_rotation.h>
00025 #include <xsi_color.h>
00026
00027 namespace XSI {
00028
00029
00030
00124
00125
00126 class SICPPSDKDECL Particle : public SIObject
00127 {
00128 public:
00130 Particle();
00131
00133 ~Particle();
00134
00138 Particle(const CRef& in_ref);
00139
00143 Particle(const Particle& in_obj);
00144
00149 bool IsA( siClassID in_ClassID) const;
00150
00154 siClassID GetClassID() const;
00155
00161 Particle& operator=(const Particle& in_obj);
00162
00168 Particle& operator=(const CRef& in_ref);
00169
00174 LONG GetIndex() const;
00175
00180 LONG GetID() const;
00181
00186 LONG GetTypeID() const;
00187
00192 CStatus PutTypeID(LONG in_TypeID);
00193
00198 MATH::CVector3 GetPosition() const;
00199
00204 CStatus PutPosition(const MATH::CVector3& in_vect);
00205
00210 MATH::CVector3 GetVelocity() const;
00211
00216 CStatus PutVelocity(const MATH::CVector3& in_vect);
00217
00222 MATH::CRotation GetAngularVelocity() const;
00223
00228 CStatus PutAngularVelocity(const MATH::CRotation& in_vect);
00229
00234 MATH::CVector3 GetRotation() const;
00235
00240 CStatus PutRotation(const MATH::CVector3& in_vect);
00241
00245 double GetPathLength() const ;
00246
00253 LONG GetAge() const ;
00254
00259 CStatus PutAge( LONG in_age ) ;
00260
00265 LONG GetAgeLimit() const;
00266
00271 CStatus PutAgeLimit(LONG in_agelimit);
00272
00277 LONG GetSeed() const;
00278
00283 CStatus PutSeed(LONG in_seed);
00284
00289 CColor GetColor( ) const ;
00290
00295 CStatus PutColor( const CColor & in_vColor ) ;
00296
00302 MATH::CVector3 GetUVW() const;
00303
00309 CStatus PutUVW(const MATH::CVector3& in_vect);
00310
00319 LONG GetSpriteIndex() const;
00320
00325 CStatus PutSpriteIndex(LONG in_index);
00326
00332 double GetSpriteAngle() const;
00333
00338 CStatus PutSpriteAngle(double in_angle);
00339
00344 double GetSize() const ;
00345
00350 CStatus PutSize( double in_size ) ;
00351
00356 double GetMass() const;
00357
00362 CStatus PutMass(double in_mass);
00363
00367 double GetDensity() const;
00368
00372 double GetPressure() const;
00373
00379 CRefArray GetAttributes() const;
00380
00381 private:
00382 Particle * operator&() const;
00383 Particle * operator&();
00384 };
00385
00386 };
00387 #endif // __XSIPARTICLE_H__