VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtExampleSymbolDriver5.h
Go to the documentation of this file.
1 /*****************************************************************************
2  * Copyright (c) 2023 MAK Technologies, Inc.
3  * All rights reserved.
4  *****************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <exampleSymbolFacade5.h>
13 
14 #include <vrvCore/DtDriver.h>
15 
17 
18 #include <unordered_set>
19 
20 #include <matrix/vlVector.h>
21 
22 namespace makVrv
23 {
24 
25  namespace exampleSymbolFacade5
26  {
27 
28  class DtSymbolFacade;
29 
39  : public makVrv::DtDriver
40  {
41  public:
42 
43  typedef std::unordered_set<DtSymbolFacade*> SymbolList;
44 
45  public:
46 
49 
51  virtual ~DtExampleSymbolDriver();
52 
53 
56 
59  virtual const std::string& className() const;
60 
63  virtual bool onStart();
64 
67  virtual bool onStop();
68 
71  virtual bool onTick();
72 
74 
75 
78 
82  virtual DtSymbolFacade* createSymbol( const std::string& name,
83  const DtVector& pos );
84 
88  virtual DtSymbolFacade* findSymbol( makVrv::DtElementID id );
89 
92  virtual SymbolList selectedSymbols() const;
93 
95  virtual void deleteSelectedSymbols();
96 
98 
99  protected:
100 
104  virtual void positionSymbol( DtSymbolFacade* symbol, const DtVector& pos );
105 
109  virtual void slot_currentSelectionChanged(
110  const makVrv::DtSelectionManager::IdSet& selected,
111  const makVrv::DtSelectionManager::IdSet& deselected,
114 
117  virtual void slot_displayEngineAdded( const makVrv::DtDeRecord& igRecord );
118 
119  protected:
120 
122  typedef std::unordered_map<makVrv::DtElementID,DtSymbolFacade*> SymbolFacadeMap;
123 
126 
129 
130  };
131 
132  }
133 }
#define DT_DLL_EXAMPLESYMBOLFACADE5
Definition: exampleSymbolFacade5.h:20
std::unordered_map< makVrv::DtElementID, DtSymbolFacade * > SymbolFacadeMap
Type for mapping element ids to symbol facades.
Definition: DtExampleSymbolDriver5.h:122
A Record of an IG instance.
Definition: DtDeRecord.h:24
Contains makVrv:DtSelectionManager class.
Encapsulates the creation/management of agents used to display a symbol. The Facade design pattern pr...
Definition: DtSymbolFacade5.h:41
SymbolList myCurrentlySelectedSymbols
A list of all symbols that are currently selected.
Definition: DtExampleSymbolDriver5.h:128
DtUniqueID DtElementID
The ElementID is a specific type of unique ID used to represent VR-Vantage uniquely defined elements...
Definition: DtUniqueID.h:23
The DtDriver is an abstract class. Developers derive from this to create logic that &quot;directs&quot; things ...
Definition: DtDriver.h:30
std::unordered_set< DtSymbolFacade * > SymbolList
Definition: DtExampleSymbolDriver5.h:43
SymbolFacadeMap mySymbolFacades
Map of symbol facades created by the driver (indexed by element id).
Definition: DtExampleSymbolDriver5.h:125
The DtAgentManager manages the distributed scene object framework. This includes the objects and upda...
Definition: DtAgentManager.h:38
Contains makVrv:DtDriver class.
SelectionType
The nature of the current selection.
Definition: DtSelectionManager.h:42
Provides an interface for creating and managing symbol facades. Loads the Makland terrain and creates...
Definition: DtExampleSymbolDriver5.h:38
std::set< DtUniqueID > IdSet
Definition: DtSelectionManager.h:32

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)