Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: code/branches/FICN/src/orxonox/particle/ParticleInterface.h @ 619

Last change on this file since 619 was 618, checked in by nicolasc, 18 years ago
  • changed comments to doxygen tags in flocking
  • reduced ogre depency in HUD and ParticleInterface
  • various
File size: 1.4 KB
RevLine 
[535]1#ifndef MODULE_ParticleInterface_H
2#define MODULE_ParticleInterface_H
3
4// #include "ParticleInterface.h"
[618]5// #include <Ogre.h>
6// #include <OIS/OIS.h>
[535]7// #include <CEGUI/CEGUI.h>
8// #include <CEGUIRenderer.h>
[618]9#include <OgreParticleSystem.h>
10#include <OgreParticleEmitter.h>
11#include <OgreSceneManager.h>
[535]12
13
14namespace particle
15{
16
17class ParticleInterface
18{
19 public:
[609]20        Ogre::ParticleSystem *particleSystem_;
[535]21
[609]22        ParticleInterface( Ogre::SceneManager *sceneManager, Ogre::String name, Ogre::String templateName );
[535]23        ~ParticleInterface( void );
[609]24        void addToSceneNode( Ogre::SceneNode* sceneNode );
[535]25        void dettachFromSceneNode( void );
[609]26        Ogre::ParticleEmitter* getEmitter ( int emitterNr );
[535]27        void newEmitter ( void );
[609]28        void setPositionOfEmitter ( int emitterNr, Ogre::Vector3 position );
29        Ogre::Vector3 getPositionOfEmitter ( int emitterNr );
30        void setDirection ( Ogre::Vector3 direction );
31        Ogre::Vector3 getDirection ( void );
32        Ogre::Real getVelocity();
33        void setVelocity( Ogre::Real v );
[535]34        int getRate();
35        void setRate( int r );
[609]36        Ogre::Real getDistance();
37        void setDistance( Ogre::Real d );
38        Ogre::ColourValue getColour( void );
39        void setColour( Ogre::ColourValue colour );
[535]40        void switchEnable( void );
41
42 private:
[609]43        Ogre::SceneNode *sceneNode_;
44        Ogre::SceneManager *sceneManager_;
45        Ogre::Real distance_;
46        Ogre::Real velocity_;
[535]47        int rate_;
[609]48        Ogre::ColourValue colour_;
[535]49        int numberOfEmitters_;
50
51        void standardizeEmitters();
52};
53
54
55}
56#endif
Note: See TracBrowser for help on using the repository browser.