VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtVisualizerCreationSettingsManager.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2011 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 
13 
15 #include <vrvUtil/event_signal.h>
17 
18 #include <set>
19 
20 namespace makVrv
21 {
22  class DtBaseConnection;
23  class DtDe;
24  class DtObserver;
25  class DtInputDriver;
26 
32  public DtVirtualBaseClass
33  {
34  public:
35 
38 
41  static DtVisualizerCreationSettingsManager& instance(DtDe& de);
42 
45 
49  void setCreationStrategy(int, bool);
50 
54  virtual void createAndRegisterVisualizerCreationSettings(
55  DtBaseConnection& connection );
56 
57  protected:
58 
62  typedef boost::unordered_map<int, bool>
64 
67 
70  virtual void slot_observerModeSettingChanged( int observerMode,
71  int setting );
72 
75  virtual void slot_observerModeModelSetChanged( int observerMode );
76 
79  virtual void slot_observerModeChanged( DtObserver* observer,
80  int newMode );
81 
84  virtual void slot_observerCreated( DtInputDriver*, DtObserver* observer );
85 
88  virtual void slot_observerToBeDestroyed( DtInputDriver*,
89  DtObserver* observer );
90 
92  virtual void initializeCreationSettings(
93  DtVisualizerCreationSettings* settings) const;
94 
96  virtual void connectToObserver( DtObserver* observer );
97 
99  virtual void disconnectFromObserver( DtObserver* observer );
100 
103  virtual void updateAllCreationSettings() const;
104 
105  private:
106  // Copy constructor not implemented
109 
110  // Assignment operator not implemented
113 
114  protected:
115 
119 
121  std::set<DtObserver*> myObserverSet;
122  };
123 
127  : public DtVirtualBaseClass
128  {
129 
130  public:
133  static DtVisualizerCreationSettingsManagerCreator& instance(DtDe& de);
134 
136  static void registerInstance(DtDe& de,
138 
140  virtual DtVisualizerCreationSettingsManager* create(DtDe& de);
141  };
142 }
Virtual base class.
Definition: DtVirtualBaseClass.h:19
boost::unordered_map< int, bool > VisualTypeVisualizerCreationStrategyMap
Typedef to define a map from visual type to boolean indicating whether the visualizer for that visual...
Definition: DtVisualizerCreationSettingsManager.h:63
DtDe & myDe
Definition: DtVisualizerCreationSettingsManager.h:116
DtSignalConnectionManager myConnections
Definition: DtVisualizerCreationSettingsManager.h:120
DtVisualizerCreationSettingsManager creator.
Definition: DtVisualizerCreationSettingsManager.h:126
A manager for the visualizer creation settings.
Definition: DtVisualizerCreationSettingsManager.h:31
Contains makVrv::event_signal class.
The DtBaseConnection is an abstract class.
Definition: DtBaseConnection.h:34
A facade for a DtObserverObject.
Definition: DtObserver.h:37
Contains makVrv::DtVirtualBaseClass class.
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
VisualTypeVisualizerCreationStrategyMap myVisualTypeVisualizerCreationStrategyMap
Definition: DtVisualizerCreationSettingsManager.h:118
This class&#39;s main responsibility is to handle keyboard and mouse events from OSG (Qt events are route...
Definition: DtInputDriver.h:43
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
Contains makVrv::DtVisualizerCreationSettings class.
Base class to provide boost signal/slot management.
std::set< DtObserver * > myObserverSet
Definition: DtVisualizerCreationSettingsManager.h:121
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
Container class which indicates which visualizers need to be created for each modelSet, based on whether that visualizer visualizes something that is currently enabled and if the visualizer is create-on-demand vs.
Definition: DtVisualizerCreationSettings.h:26

Document ID: Generated on Tue Sep 21 17:42:52 EDT 2021 from SVN revision 234861
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)