00001 // Copyright (C) 2002-2012 Nikolaus Gebhardt 00002 // This file is part of the "Irrlicht Engine". 00003 // For conditions of distribution and use, see copyright notice in irrlicht.h 00004 00005 #ifndef __I_PARTICLE_GRAVITY_AFFECTOR_H_INCLUDED__ 00006 #define __I_PARTICLE_GRAVITY_AFFECTOR_H_INCLUDED__ 00007 00008 #include "IParticleAffector.h" 00009 00010 namespace irr 00011 { 00012 namespace scene 00013 { 00014 00016 class IParticleGravityAffector : public IParticleAffector 00017 { 00018 public: 00019 00021 00022 virtual void setTimeForceLost( f32 timeForceLost ) = 0; 00023 00025 virtual void setGravity( const core::vector3df& gravity ) = 0; 00026 00028 virtual f32 getTimeForceLost() const = 0; 00029 00031 virtual const core::vector3df& getGravity() const = 0; 00032 00034 virtual E_PARTICLE_AFFECTOR_TYPE getType() const { return EPAT_GRAVITY; } 00035 }; 00036 00037 } // end namespace scene 00038 } // end namespace irr 00039 00040 00041 #endif // __I_PARTICLE_GRAVITY_AFFECTOR_H_INCLUDED__ 00042