topical media & game development

talk show tell print

lib-game-delta3d-demos-fireFighter-firehoseactor.h / h



  /* -*-c++-*-
   * Delta3D Open Source Game and Simulation Engine
   * Copyright (C) 2006, Alion Science and Technology, BMH Operation
   *
   * This library is free software; you can redistribute it and/or modify it under
   * the terms of the GNU Lesser General Public License as published by the Free
   * Software Foundation; either version 2.1 of the License, or (at your option)
   * any later version.
   *
   * This library is distributed in the hope that it will be useful, but WITHOUT
   * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
   * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
   * details.
   *
   * You should have received a copy of the GNU Lesser General Public License
   * along with this library; if not, write to the Free Software Foundation, Inc.,
   * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
   *
   * William E. Johnson II 
   */
  ifndef DELTA_FIRE_FIGHTER_FIRE_HOSE_ACTOR
  define DELTA_FIRE_FIGHTER_FIRE_HOSE_ACTOR
  
  include <fireFighter/gameitemactor.h>
  include <fireFighter/export.h>
  
  namespace osg
  {
     class Group;
  }
  
  namespace dtCore
  {
     class ParticleSystem;
  }
  
  class FIRE_FIGHTER_EXPORT FireHoseActor : public GameItemActor
  {
     public:
  
  
Constructor FireHoseActor(dtGame::GameActorProxy &proxy);

        virtual void Activate(bool enable = true);
  
        
Sets the filename of the stream particle system.
parameter: filename the new filename

  
        void SetStreamFilename(const std::string &filename);
  
        
Returns the filename of the stream particle system.
returns: the current filename

  
        std::string GetStreamFilename() const;
  
     protected:
  
  
Destructor virtual ~FireHoseActor();

     private:
  
        dtCore::RefPtr<dtCore::ParticleSystem> mParticleSystem;
  };
  
  class FIRE_FIGHTER_EXPORT FireHoseActorProxy : public GameItemActorProxy
  {
     public:
  
  
Constructor FireHoseActorProxy();

  
Builds the actor properties virtual void BuildPropertyMap();

  
Builds the invokables virtual void BuildInvokables();

  
Creates the actor virtual void CreateActor() { SetActor(*new FireHoseActor(*this)); }

     protected:
  
  
Destructor virtual ~FireHoseActorProxy();

     private:
  
  };
  
  endif
  


(C) Æliens 04/09/2009

You may not copy or print any of this material without explicit permission of the author or the publisher. In case of other copyright issues, contact the author.