VR-Forces 4.0.4 Class Documentation
include/vrvCore/Dt2DEntitySensorVolumeVisualizer.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 namespace makVrv
00016 {
00017 
00018    class DtModelAgent;
00019 
00022    class DT_DLL_VRVCORE Dt2DEntitySensorVolumeVisualizer :
00023       public DtStateVisualizer
00024    {
00025    public:
00026 
00029       enum ColoringMode
00030       {
00031          PulseFrequency,
00032          Frequency,
00033          Fixed
00034       };
00035 
00036    public:
00037 
00043       Dt2DEntitySensorVolumeVisualizer( DtBaseConnection& simulation,  
00044          DtStateListener& listener, int modelSet );
00045 
00048       virtual ~Dt2DEntitySensorVolumeVisualizer();
00049 
00052       virtual void createModelAgents();
00053 
00058       virtual void destroyModelAgents();
00059 
00062       virtual void setModelDefinitionForAgents();
00063 
00068       virtual void setColoringMode( ColoringMode method );
00069 
00074       virtual const ColoringMode coloringMode() const;
00075 
00077       virtual const DtStateVisualizer::TypeInfo& typeInfo() const;
00078 
00080       static const DtStateVisualizer::TypeInfo& theTypeInfo();
00081 
00082    protected:
00083 
00089       virtual DtModelAgent* createBeamModel();
00090 
00098       DtModelAgent* newBeamModel( DtUniqueID& beamUniqueId );
00099 
00104       virtual DtModelAgent* findBeamModel( const DtUniqueID& beamModelId );
00105 
00114       virtual bool setBeamModelVisible( const DtUniqueID& beamModelId, 
00115          bool vis );
00116 
00121       virtual void destroyBeamModel( const DtUniqueID& beamModelId );
00122 
00128       void destroyBeamModelInternal( const DtUniqueID& beamModelId );
00129 
00130    protected:
00131 
00132       ColoringMode myColoringMode;
00133 
00134    private:
00135 
00136       typedef boost::unordered_map<DtUniqueID,DtModelAgent*> BeamModelMap;
00137       BeamModelMap myBeamModels;
00138 
00139    };
00140 
00141 
00142    typedef DtStateVisualizerCreatorTemplate<Dt2DEntitySensorVolumeVisualizer>
00143       Dt2DEntitySensorVolumeVisualizerCreator;
00144 }

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)