VR-Forces 4.0.4 Class Documentation
include/vrvCore/DtEntitySensorVolumeVisualizer.h
Go to the documentation of this file.
00001 /*****************************************************************************
00002  * Copyright (c) 2012 MAK Technologies, Inc.
00003  * All rights reserved.
00004  *****************************************************************************/
00005 
00009 
00010 #pragma once
00011 #include <vrvCore/DtUniqueID.h>
00012 #include <vrvCore/DtStateVisualizer.h>
00013 #include <boost/unordered_map.hpp>
00014 
00015 class DtVector;
00016 
00017 namespace makVrv
00018 {
00019 
00020    class DtModelAgent;
00021 
00024    class DT_DLL_VRVCORE DtEntitySensorVolumeVisualizer : 
00025       public DtStateVisualizer
00026    {
00027    public:
00028 
00031       enum ColoringMode
00032       {
00033          PulseFrequency,
00034          Frequency,
00035          Fixed
00036       };
00037 
00043       DtEntitySensorVolumeVisualizer( DtBaseConnection& simulation,  
00044          DtStateListener& listener, int modelSet );
00045 
00048       virtual ~DtEntitySensorVolumeVisualizer();
00049 
00052       virtual void createModelAgents();
00053 
00057       virtual void destroyModelAgents();
00058 
00061       virtual void setModelDefinitionForAgents();
00062 
00067       virtual void setColoringMode( ColoringMode method );
00068 
00073       virtual const ColoringMode coloringMode() const;
00074 
00076       virtual const DtStateVisualizer::TypeInfo& typeInfo() const;
00077 
00079       static const DtStateVisualizer::TypeInfo& theTypeInfo();
00080 
00081    protected:
00082 
00087       virtual DtModelAgent* createBeamModel();
00088 
00095       virtual DtModelAgent* newBeamModel( DtUniqueID& beamUniqueId );
00096 
00101       virtual DtModelAgent* findBeamModel( const DtUniqueID& beamModelId );
00102 
00109       virtual bool setBeamModelVisible( const DtUniqueID& beamModelId, bool visibility );
00110 
00115       virtual void destroyBeamModel( const DtUniqueID& beamModelId );
00116 
00121       void destroyBeamModelInternal( const DtUniqueID& beamModelId );
00122 
00123    protected:
00124 
00125       ColoringMode myColoringMode;
00126 
00127    private:
00128       typedef boost::unordered_map<DtUniqueID,DtModelAgent*> BeamModelMap;
00129       BeamModelMap myBeamModels;
00130 
00131    };
00132 
00133 
00134    typedef DtStateVisualizerCreatorTemplate<DtEntitySensorVolumeVisualizer>
00135       DtEntitySensorVolumeVisualizerCreator;
00136 }

Document ID: Generated on Fri Jun 29 16:33:32 EDT 2012 from SVN revision 116588
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)