VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
spotReportTrackHistoryVisualizer.h
Go to the documentation of this file.
1 /*****************************************************************************
2  * Copyright (c) 2017 MAK Technologies, Inc.
3  * All rights reserved.
4  *****************************************************************************/
5 
10 
11 #pragma once
12 
13 #include <vrfGuiCore/vrfGuiCore.h>
15 #include <vrvUtil/DtUnicode.h>
16 #include <vrfutil/rwUUID.h>
20 
21 namespace makVrv
22 {
23  class DtRibbonModelAgent;
24  class DtTrackHistoryUpdaterAgent;
25  class DtSceneObjectAgent;
26 }
27 
28 namespace makVrf
29 {
30  class DtSpotReportListenerImplementation;
31  class DtExternalDataVisualHandlerInterface;
32 
34  {
35  public:
36 
39  makVrv::DtStateListener& listener, makVrv::DtSceneObjectAgent*, makVrv::DtModelSetId modelSet );
40 
43 
44  //initialize method called in the creator class
45  virtual void initialize_settings();
46 
47  virtual void setModelDefinitionForAgents();
48 
50  virtual const makVrv::DtStateVisualizer::TypeInfo& typeInfo() const;
51 
53  static const makVrv::DtStateVisualizer::TypeInfo& theTypeInfo();
54 
55  virtual void setMaximumNumberOfTrackReports(int);
56 
57  protected:
58  virtual void initialize() override;
59  virtual void destroyModelAgents();
60  virtual void createModelAgents();
61 
62  virtual void tryToDraw();
63 
64  virtual void slot_trackHistoriesEnabled(const DtUUID&, int setting);
65  virtual void slot_selectionDisplayAvailableChangedFor(int setting);
66 
67  virtual void keepReportsForTimePeriodChanged(bool);
68  virtual void spotReportsRemovedFromTimeout(int);
69 
71  virtual void slot_setSelected(bool);
72 
74  virtual void slot_trackHistoryRibbonLengthChanged();
75  virtual void slot_trackHistoryRibbonInfiniteChanged();
76 
78  virtual void createVisuals();
79 
80  virtual void spotReportStateAdded(const DtSpotReportState&);
81 
82  virtual DtExternalDataVisualHandlerInterface* createAndInitializePointVisualizer(int index);
83  virtual void keepReportsForTimeChanged(int);
84 
85  protected:
86  makVrv::DtSceneObjectAgent* myTrackHistorySceneObjectAgent;
88  bool myEnabled;
89 
91 
92  std::vector<DtExternalDataVisualHandlerInterface*> myVertexVisualizers;
96  boost::signals2::scoped_connection myTurnOffIfSelectedConnection;
97  };
98 
101 
103  {
104  public:
106  float segmentSpacing, const osg::Vec4& color, float maxLength, float timeout);
107 
108  virtual ~DtVrfOsgTrackHistoryRibbon();
109  virtual void removePoints(int);
111  };
112 
114  {
115  public:
117  const osg::Vec4& color, float maxLength, float timeout)
118  {
119  return new DtVrfOsgTrackHistoryRibbon(de, segmentSpacing, color, maxLength, timeout);
120  }
121  };
122 }
Definition: spotReportTrackHistoryVisualizer.h:33
UUID is a unique ID wrapper class.
Definition: uuid.h:59
makVrv::DtSignalConnectionManager myPersistantConnections
Definition: spotReportTrackHistoryVisualizer.h:90
bool myIsVisible
Definition: spotReportTrackHistoryVisualizer.h:95
std::vector< DtExternalDataVisualHandlerInterface * > myVertexVisualizers
Definition: spotReportTrackHistoryVisualizer.h:92
Definition: spotReportListenerImplementation.h:24
Definition: DtStateVisualizer.h:274
Contains the DtUUID class declaration.
bool myKeepReportsForTimePeriod
Definition: spotReportTrackHistoryVisualizer.h:94
makVrv::DtStateVisualizerCreatorTemplate< DtSpotReportTrackHistoryVisualizer > DtSpotReportTrackHistoryVisualizerCreator
Definition: spotReportTrackHistoryVisualizer.h:100
#define DT_DLL_VRFGUICORE
Contains DLL export macros.
Definition: vrfGuiCore.h:25
Definition: spotReportTrackHistoryVisualizer.h:113
bool myEnabled
Definition: spotReportTrackHistoryVisualizer.h:88
The DtBaseConnection is an abstract class.
Definition: DtBaseConnection.h:35
Definition: spotReportTrackHistoryVisualizer.h:102
Definition: DtOsgTrackHistoryRibbon.h:201
Override track history visualizer so this can be used on spot reports.
Definition: vrfVantageSubclasses.h:87
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
makVrv::DtOsgTrackHistoryRibbon * create(makVrv::DtDe &de, float segmentSpacing, const osg::Vec4 &color, float maxLength, float timeout)
Create atrack history ribbon.
Definition: spotReportTrackHistoryVisualizer.h:116
Contains the DtOsgTrackHistoryRibbon class declaration.
DtSpotReportListenerImplementation * mySpotReportListener
Definition: spotReportTrackHistoryVisualizer.h:87
Definition: externalDataVisualHandlerInterface.h:26
Definition: spotReportState.h:42
makVrv::DtSceneObjectAgent * myTrackHistorySceneObjectAgent
Definition: spotReportTrackHistoryVisualizer.h:86
boost::signals2::scoped_connection myTurnOffIfSelectedConnection
Definition: spotReportTrackHistoryVisualizer.h:96
The DtDe is the core component of any VR-Vantage application. It owns a DtRenderer, DtDeCommunicator, as well as a DtDisplay and other things.
Definition: DtDe.h:72
DtModelSetId
Definition: DtModelSetEnums.h:19
Contains the DtSharedEntityDisplaySettings class declaration.
OSG implementation of a track history ribbon.
Definition: DtOsgTrackHistoryRibbon.h:33
The DtStateListener is an abstract class. Subclasses implement functionality that will allow data to ...
Definition: DtStateListener.h:26
float mySpotReportTimeout
Definition: spotReportTrackHistoryVisualizer.h:93
Struct to hold metadata about each functional visualizer type This allows users of the factory to get...
Definition: DtStateVisualizer.h:54

Document ID: Generated on Wed Mar 27 22:49:11 EDT 2024 from SVN revision 264633
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)