VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtGlStudioDriver.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2015 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
9 
10 #pragma once
11 
13 #include <vrvGlStudio/DtGlStudio.h>
14 
15 #include <vrvCore/DtDriver.h>
16 
17 #include <string>
18 #include <map>
19 
20 namespace makVrv
21 {
22 
23  class DtAttachManager;
24  class DtObserver;
25  class DtDe;
26 
30  {
31  public:
33  DtGlStudioDriver(DtAgentManager& agentManager,
34  const std::string& instanceName);
35 
37  virtual ~DtGlStudioDriver();
38 
40  virtual const std::string& className() const;
41 
42  virtual void hideEntity(DtObserver* obs);
43  virtual void unHideEntity(DtObserver* obs);
44 
48  virtual void setAttachmentHas3DCockpit(DtObserver* obs, bool cockpit);
49 
53  virtual void realizeCockpit(DtObserver* obs,
54  const std::string& modelDefinition = "");
55 
56  protected:
57 
60  virtual bool onStart();
61 
64  virtual bool onStop();
65 
67  virtual bool onTick();
68 
70  // loaded /displayed
71  virtual void handleAttachChange(DtObserver* obs);
72 
74  virtual void handleObserverDestroyed(DtObserver* observer);
75 
77  virtual void handleObserverCreated(DtObserver* observer);
78 
81  virtual void handleEnableStateChanged( bool enabled );
82 
84  virtual void unrealizeCockpit(DtObserver* obs);
85 
87  virtual DtUniqueID findAttachedSimObject(DtObserver* obs);
88 
89  protected:
90 
91  typedef std::map<DtObserver*, DtUniqueID> DtObserverAttachmentMap;
93  std::string myClassName;
96  };
97 
101  {
102  public:
103 
106 
108  virtual ~DtGlStudioDriverCreator();
109 
112  virtual const std::string& extension() const;
113 
115  virtual DtDriver* create(DtAgentManager& agentManager, const std::string& instanceName) const;
116 
117  protected:
118  std::string myFileExtension;
119  };
120 
121 } //makVrv::
std::string myClassName
Definition: DtGlStudioDriver.h:93
DtAttachManager * myAttachManager
Definition: DtGlStudioDriver.h:94
A facade for a DtObserverObject.
Definition: DtObserver.h:38
The DtDriver is an abstract class. Developers derive from this to create logic that &quot;directs&quot; things ...
Definition: DtDriver.h:30
DtDe * myDe
Definition: DtGlStudioDriver.h:95
std::string myFileExtension
Definition: DtGlStudioDriver.h:118
Driver for GLStudio cockpits.
Definition: DtGlStudioDriver.h:29
Creator for registering GLStudio driver.
Definition: DtGlStudioDriver.h:100
The DtAgentManager manages the distributed scene object framework. This includes the objects and upda...
Definition: DtAgentManager.h:38
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
Contains makVrv:DtDriver class.
DtObserverAttachmentMap myAttachedObserverMap
Definition: DtGlStudioDriver.h:92
#define DT_DLL_VRVGLSTUDIOSHARED
Definition: DtGlStudioShared.h:22
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:76
std::map< DtObserver *, DtUniqueID > DtObserverAttachmentMap
Definition: DtGlStudioDriver.h:91
Abstract DtDriver creator.
Definition: DtDriver.h:204
The master window of the scene.
Definition: DtAttachManager.h:27

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)