VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtExampleSymbolDriver4.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 <exampleSymbolFacade4.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 exampleSymbolFacade4
26  {
27 
28  class DtSymbolFacade;
29 
38  : public makVrv::DtDriver
39  {
40  public:
41 
42  typedef std::unordered_set<DtSymbolFacade*> SymbolList;
43 
44  public:
45 
48 
50  virtual ~DtExampleSymbolDriver();
51 
52 
55 
58  virtual const std::string& className() const;
59 
62  virtual bool onStart();
63 
66  virtual bool onStop();
67 
70  virtual bool onTick();
71 
73 
74 
77 
81  virtual DtSymbolFacade* createSymbol( const std::string& name,
82  const DtVector& pos );
83 
87  virtual DtSymbolFacade* findSymbol( makVrv::DtElementID id );
88 
91  virtual SymbolList selectedSymbols() const;
92 
94 
95  protected:
96 
100  virtual void positionSymbol( DtSymbolFacade* symbol, const DtVector& pos );
101 
105  virtual void slot_currentSelectionChanged(
106  const makVrv::DtSelectionManager::IdSet& selected,
107  const makVrv::DtSelectionManager::IdSet& deselected,
110 
113  virtual void slot_displayEngineAdded( const makVrv::DtDeRecord& igRecord );
114 
115  protected:
116 
118  typedef std::unordered_map<makVrv::DtElementID,DtSymbolFacade*> SymbolFacadeMap;
119 
122 
125 
126  };
127 
128  }
129 }
Export macro and initialization declarations for exampleSymbolFacade4.
Provides an interface for creating and managing symbol facades. Loads the Makland terrain and creates...
Definition: DtExampleSymbolDriver4.h:37
SymbolFacadeMap mySymbolFacades
Map of symbol facades created by the driver (indexed by element id).
Definition: DtExampleSymbolDriver4.h:121
A Record of an IG instance.
Definition: DtDeRecord.h:24
Contains makVrv:DtSelectionManager class.
DtUniqueID DtElementID
The ElementID is a specific type of unique ID used to represent VR-Vantage uniquely defined elements...
Definition: DtUniqueID.h:23
#define DT_DLL_EXAMPLESYMBOLFACADE4
Definition: exampleSymbolFacade4.h:20
The DtDriver is an abstract class. Developers derive from this to create logic that &quot;directs&quot; things ...
Definition: DtDriver.h:31
std::unordered_set< DtSymbolFacade * > SymbolList
Definition: DtExampleSymbolDriver4.h:42
Encapsulates the creation/management of agents used to display a symbol. The Facade design pattern pr...
Definition: DtSymbolFacade4.h:44
SymbolList myCurrentlySelectedSymbols
A list of all symbols that are currently selected.
Definition: DtExampleSymbolDriver4.h:124
The DtAgentManager manages the distributed scene object framework. This includes the objects and upda...
Definition: DtAgentManager.h:38
Contains makVrv:DtDriver class.
std::unordered_map< makVrv::DtElementID, DtSymbolFacade * > SymbolFacadeMap
Type for mapping element ids to symbol facades.
Definition: DtExampleSymbolDriver4.h:118
SelectionType
The nature of the current selection.
Definition: DtSelectionManager.h:42
std::set< DtUniqueID > IdSet
Definition: DtSelectionManager.h:32

Document ID: Generated on Tue Sep 24 19:28:17 EDT 2024 from SVN revision 269799
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)