Irrlicht 3D Engine
IParticleAttractionAffector.h
Go to the documentation of this file.
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_ATTRACTION_AFFECTOR_H_INCLUDED__
00006 #define __I_PARTICLE_ATTRACTION_AFFECTOR_H_INCLUDED__
00007 
00008 #include "IParticleAffector.h"
00009 
00010 namespace irr
00011 {
00012 namespace scene
00013 {
00014 
00016 class IParticleAttractionAffector : public IParticleAffector
00017 {
00018 public:
00019 
00021     virtual void setPoint( const core::vector3df& point ) = 0;
00022 
00024     virtual void setAttract( bool attract ) = 0;
00025 
00027     virtual void setAffectX( bool affect ) = 0;
00028 
00030     virtual void setAffectY( bool affect ) = 0;
00031 
00033     virtual void setAffectZ( bool affect ) = 0;
00034 
00036     virtual const core::vector3df& getPoint() const = 0;
00037 
00039     virtual bool getAttract() const = 0;
00040 
00042     virtual bool getAffectX() const = 0;
00043 
00045     virtual bool getAffectY() const = 0;
00046 
00048     virtual bool getAffectZ() const = 0;
00049 
00051     virtual E_PARTICLE_AFFECTOR_TYPE getType() const { return EPAT_ATTRACT; }
00052 };
00053 
00054 } // end namespace scene
00055 } // end namespace irr
00056 
00057 
00058 #endif // __I_PARTICLE_ATTRACTION_AFFECTOR_H_INCLUDED__
00059