![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /****************************************************************************** 00002 ** Copyright (c) 2009 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 ******************************************************************************/ 00005 /****************************************************************************** 00006 ** $RCSfile: DtEntityDIGuyStateVisualizer.h,v $ $Revision: 1.43 $ $State: Exp $ 00007 ******************************************************************************/ 00008 00014 00015 #pragma once 00016 #include <vrvCore/DtCharacterModel.h> 00017 #include <vrvCore/DtEntityStateVisualizer.h> 00018 #include <vrvUtil/signalslib.h> 00019 00020 namespace makVrv 00021 { 00022 class DtCharacterModelAgent; 00023 00026 class DT_DLL_VRVCORE DtEntityDIGuyStateVisualizer : 00027 public DtEntityStateVisualizer 00028 { 00029 public: 00031 DtEntityDIGuyStateVisualizer(DtBaseConnection& simulation, 00032 DtStateListener& listener, int modelSet); 00033 00035 virtual ~DtEntityDIGuyStateVisualizer(); 00036 00037 virtual void setCharacterPosture(DtCharacterModel::Posture); 00038 virtual void setCharacterAlive(bool); 00039 virtual void setCharacterAppearance( const std::string& appearance ); 00040 virtual void setCharacterModel( const std::string& m ); 00041 virtual void setCharacterAction( const std::string& action, bool paused ); 00042 virtual void setCharacterWeaponAiming( bool aiming); 00043 virtual void setCharacterPaused(bool paused); 00044 00046 virtual void setVisualizerDefinition(const DtVisualizerDefinition& visDef); 00047 00048 virtual void setColorizedColor( float r, float g, float b, float alpha ); 00049 00051 virtual void setDisableModelScaling( bool b ); 00052 00054 virtual const DtStateVisualizer::TypeInfo& typeInfo() const; 00055 00057 static const DtStateVisualizer::TypeInfo& theTypeInfo(); 00058 00059 protected: 00060 virtual void createModelAgents(); 00061 virtual void destroyModelAgents(); 00062 virtual void setModelDefinitionForAgents(); 00063 virtual void resetSpatial(); 00064 virtual void updateColorBlending(); 00065 00066 protected: 00067 00068 DtCharacterModelAgent* myCharacterModelAgent; 00069 DtCharacterModel::Posture myCharacterPosture; 00070 bool myAlive; 00071 bool myDeployed; 00072 bool myAffectsBounds; 00073 bool myColorized; 00074 float myColorizedRed; 00075 float myColorizedGreen; 00076 float myColorizedBlue; 00077 float myColorizedAlpha; 00078 00079 std::string myLastAction; 00080 bool myLastPaused; 00081 bool myDisableModelScaling; 00082 }; 00083 00084 00085 typedef DtStateVisualizerCreatorTemplate<DtEntityDIGuyStateVisualizer> 00086 DtEntityDIGuyStateVisualizerCreator; 00087 } 00088