![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /***************************************************************************** 00002 * Copyright (c) 2012 MAK Technologies, Inc. 00003 * All rights reserved. 00004 *****************************************************************************/ 00005 00009 00010 #pragma once 00011 00012 #include <vrvCore/DtEntityStateVisualizer.h> 00013 00014 namespace makVrv 00015 { 00016 00017 class DtRibbonModelAgent; 00018 class DtTrackHistoryUpdaterAgent; 00019 00023 class DT_DLL_VRVCORE DtEntityTrackHistoryVisualizer 00024 : public DtEntityStateVisualizer 00025 { 00026 public: 00027 00029 DtEntityTrackHistoryVisualizer( DtBaseConnection& simulation, 00030 DtStateListener& listener, int modelSet ); 00031 00033 virtual ~DtEntityTrackHistoryVisualizer(); 00034 00036 virtual void setTrackHistoryEnabled( bool ); 00037 00039 bool trackHistoryEnabled() const; 00040 00042 virtual bool active() const; 00043 00045 virtual void setColor( float r, float g, float b, float alpha ); 00046 00048 virtual const DtStateVisualizer::TypeInfo& typeInfo() const; 00049 00051 static const DtStateVisualizer::TypeInfo& theTypeInfo(); 00052 00053 protected: 00054 00057 void setEmbarked( bool b ); 00058 00061 virtual void updateActivity(); 00062 00064 virtual void createModelAgents(); 00065 00067 virtual void destroyModelAgents(); 00068 00070 virtual void updateColor(); 00071 00073 virtual void setModelDefinitionForAgents(); 00074 00076 virtual void setVisualizerDefinition( const DtVisualizerDefinition& visDef ); 00077 00081 00082 virtual void slot_trackHistoryRibbonSpacingChanged( float spacing ); 00083 virtual void slot_trackHistoryRibbonLengthChanged( int maxSamples ); 00084 virtual void slot_trackHistoryRibbonInfiniteChanged( bool isInfinite ); 00085 virtual void slot_listenerHostGlobalIdSet( const std::string& hostId ); 00086 00088 00089 protected: 00090 00091 DtRibbonModelAgent* myTrackHistory; 00092 DtTrackHistoryUpdaterAgent* myTrackHistoryUpdater; 00093 bool myInfiniteFlag; 00094 float mySampleSpacing; 00095 int myRibbonLength; 00096 bool myTrackHistoryEnabled; 00097 bool myEmbarked; 00098 bool myOcclusionEnabled; 00099 bool myColorSet; 00100 float myColor[4]; 00101 00102 }; 00103 00104 00106 typedef DtStateVisualizerCreatorTemplate<DtEntityTrackHistoryVisualizer> 00107 DtEntityTrackHistoryVisualizerCreator; 00108 }