Irrlicht 3D Engine
IParticleCylinderEmitter.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_CYLINDER_EMITTER_H_INCLUDED__
00006 #define __I_PARTICLE_CYLINDER_EMITTER_H_INCLUDED__
00007 
00008 #include "IParticleEmitter.h"
00009 
00010 namespace irr
00011 {
00012 namespace scene
00013 {
00014 
00016 class IParticleCylinderEmitter : public IParticleEmitter
00017 {
00018 public:
00019 
00021     virtual void setCenter( const core::vector3df& center ) = 0;
00022 
00024     virtual void setNormal( const core::vector3df& normal ) = 0;
00025 
00027     virtual void setRadius( f32 radius ) = 0;
00028 
00030     virtual void setLength( f32 length ) = 0;
00031 
00033     virtual void setOutlineOnly( bool outlineOnly = true ) = 0;
00034 
00036     virtual const core::vector3df& getCenter() const = 0;
00037 
00039     virtual const core::vector3df& getNormal() const = 0;
00040 
00042     virtual f32 getRadius() const = 0;
00043 
00045     virtual f32 getLength() const = 0;
00046 
00048     virtual bool getOutlineOnly() const = 0;
00049 
00051     virtual E_PARTICLE_EMITTER_TYPE getType() const { return EPET_CYLINDER; }
00052 };
00053 
00054 } // end namespace scene
00055 } // end namespace irr
00056 
00057 
00058 #endif
00059