00001 /************************************************************************/ 00002 /* This file is part of openMask(c) INRIA, CNRS, Universite de Rennes 1 */ 00003 /* 1993-2002, thereinafter the Software */ 00004 /* */ 00005 /* The Software has been developped within the Siames Project. */ 00006 /* INRIA, the University of Rennes 1 and CNRS jointly hold intellectual */ 00007 /* property rights */ 00008 /* */ 00009 /* The Software has been registered with the Agence pour la Protection */ 00010 /* des Programmes (APP) under registration number */ 00011 /* IDDN.FR.001.510008.00.S.P.2001.000.41200 */ 00012 /* */ 00013 /* This file may be distributed under the terms of the Q Public License */ 00014 /* version 1.0 as defined by Trolltech AS of Norway and appearing in */ 00015 /* the file LICENSE.QPL included in the packaging of this file. */ 00016 /* */ 00017 /* Licensees holding valid specific licenses issued by INRIA, CNRS or */ 00018 /* Universite Rennes 1 for the software may use this file in */ 00019 /* acordance with that specific license */ 00020 /************************************************************************/ 00021 #ifndef OMK_VIS_AWARENESSANIMATOR_H 00022 #define OMK_VIS_AWARENESSANIMATOR_H 00023 00024 #include "OMKOgreAnimatorT.h" 00025 #include "OMKBaseType.h" 00026 #include "OMKColorType.h" 00027 #include "OMKMaterial.h" 00028 #include "OMKAddOn.h" 00029 namespace OMK 00030 { 00031 namespace Vis 00032 { 00033 class OgreVis ; 00034 00134 template< typename Type > // Only instanciated for bool and string 00135 class OMKADDON_API AwarenessAnimator 00136 : public OgreAnimatorT< Type >, 00137 public IUpdateMaterial 00138 { 00139 DECLARE_TEMPLATE_ANIMATOR_FACTORY( AwarenessAnimator, Type ) ; 00140 private: 00145 virtual void selfProcessVis( const Type& value ) ; 00146 void doIt( bool awareness ) ; 00147 //Var 00148 protected: 00149 NodeMaterialOrig* _node ; 00150 bool _awareness ; 00151 Ogre::Vector4 _color ; 00152 virtual void update( NodeMaterial* node ) ; 00153 virtual Ogre::String getMaterialName( const Ogre::String& name ) const ; 00154 } ; 00155 class OMKADDON_API AwarenessColorAnimator 00224 : public OgreAnimatorT< OMK::Type::ColorType >, 00225 public IUpdateMaterial 00226 { 00227 DECLARE_ANIMATOR_FACTORY( AwarenessColorAnimator ) ; 00228 private: 00233 virtual void selfProcessVis( const OMK::Type::ColorType& value ) ; 00234 //Var 00235 protected: 00236 NodeMaterialOrig* _node ; 00237 bool _awareness ; 00238 Ogre::Vector4 _color ; 00239 virtual void update( NodeMaterial* node ) ; 00240 virtual Ogre::String getMaterialName( const Ogre::String& name ) const ; 00241 } ; 00242 00243 }// namespace Vis 00244 }// namespace OMK 00245 00246 #endif //OMK_VIS_AWARENESSANIMATOR_H
Documentation generated on Mon Jun 9 11:45:55 2008 |
Generated with doxygen by Dimitri van Heesch , 1997-2007 |