VR-Forces 5.0.1 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, int modelSet );
41  makVrv::DtStateListener& listener, makVrv::DtSceneObjectAgent*, int modelSet );
42 
45 
46  //initialize method called in the creator class
47  virtual void initialize_settings();
48 
49  virtual void setModelDefinitionForAgents();
50 
52  virtual const makVrv::DtStateVisualizer::TypeInfo& typeInfo() const;
53 
55  static const makVrv::DtStateVisualizer::TypeInfo& theTypeInfo();
56 
57  virtual void setMaximumNumberOfTrackReports(int);
58 
59  protected:
60  virtual void initialize() override;
61  virtual void destroyModelAgents();
62  virtual void createModelAgents();
63 
64  virtual void tryToDraw();
65 
66  virtual void slot_trackHistoriesEnabled(const DtUUID&, int setting);
67 
68  virtual void keepReportsForTimePeriodChanged(bool);
69  virtual void spotReportsRemovedFromTimeout(int);
70 
72  virtual void slot_setSelected(bool);
73 
75  virtual void slot_trackHistoryRibbonLengthChanged();
76  virtual void slot_trackHistoryRibbonInfiniteChanged();
77 
79  virtual void createVisuals();
80 
81  virtual void spotReportStateAdded(const DtSpotReportState&);
82 
83  virtual DtExternalDataVisualHandlerInterface* createAndInitializePointVisualizer(int index);
84  virtual void keepReportsForTimeChanged(int);
85 
86  protected:
87  makVrv::DtSceneObjectAgent* myTrackHistorySceneObjectAgent;
89  bool myEnabled;
90 
92 
93  std::vector<DtExternalDataVisualHandlerInterface*> myVertexVisualizers;
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);
110  virtual void cleanupOldSegments(double simTime);
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: rwUUID.h:226
makVrv::DtSignalConnectionManager myPersistantConnections
Definition: spotReportTrackHistoryVisualizer.h:91
bool myIsVisible
Definition: spotReportTrackHistoryVisualizer.h:96
std::vector< DtExternalDataVisualHandlerInterface * > myVertexVisualizers
Definition: spotReportTrackHistoryVisualizer.h:93
Definition: spotReportListenerImplementation.h:24
Definition: DtStateVisualizer.h:305
Contains the DtUUID class declaration.
bool myKeepReportsForTimePeriod
Definition: spotReportTrackHistoryVisualizer.h:95
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:89
The DtBaseConnection is an abstract class.
Definition: DtBaseConnection.h:39
Definition: spotReportTrackHistoryVisualizer.h:102
Definition: DtOsgTrackHistoryRibbon.h:182
Override track history visualizer so this can be used on spot reports.
Definition: vrfVantageSubclasses.h:90
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:88
Definition: externalDataVisualHandlerInterface.h:26
Definition: spotReportState.h:42
makVrv::DtSceneObjectAgent * myTrackHistorySceneObjectAgent
Definition: spotReportTrackHistoryVisualizer.h:87
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:70
Contains the DtSharedEntityDisplaySettings class declaration.
OSG implementation of a track history ribbon.
Definition: DtOsgTrackHistoryRibbon.h:31
The DtStateListener is an abstract class. Subclasses implement functionality that will allow data to ...
Definition: DtStateListener.h:25
float mySpotReportTimeout
Definition: spotReportTrackHistoryVisualizer.h:94
Struct to hold metadata about each functional visualizer type This allows users of the factory to get...
Definition: DtStateVisualizer.h:56

Document ID: Generated on Mon Jun 20 00:38:30 EDT 2022 from SVN revision 244029
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)