20 #include <boost/unordered_map.hpp>
21 #include <matrix/vlVector.h>
28 class DtCoordinateSystem;
29 class DtDisplayUnitsConverter;
30 class DtBasicEditingEventProcessor;
31 class DtElementDefinitionManager;
32 class DtIntervisibilityElement;
33 class DtIntervisibilityStateListener;
34 class DtIntervisibilityStateListenerCreator;
44 typedef boost::unordered_map<DtElementID, DtIntervisibilityElement*>
46 typedef boost::unordered_map<DtElementID, DtIntervisibilityStateListener*>
60 virtual bool autoStart()
const;
79 const DtUnicode& intervisibilityLine()
const;
96 const DtUnicode& intervisibilityFan()
const;
105 const ElementMap& intervisibilityElements()
const;
122 const DtUnicode& intervisibilityEntityFan()
const;
126 void addListenerCreator(
const std::string&,
130 virtual void cancelChanges();
137 virtual void destroyAll();
143 virtual void setAllowCreating(
bool);
151 virtual void setAllowEditing(
bool);
157 virtual void intervisibilityObjectsShown(
bool show );
169 static std::string theInstanceName();
191 const std::string& definition)
const;
203 const AttachPoints& = AttachPoints());
206 virtual bool onTick();
211 virtual bool onStart();
216 virtual bool onStop();
219 virtual void completeSetup();
222 virtual void slot_onCurrentSelectionChanged(
230 virtual void connectProcessorSignals();
234 virtual void slot_locationChanged(
const DtVector&,
double altAboveGround);
237 virtual void slot_altitudeChanged(
const DtVector&,
double);
240 virtual void slot_altitudeIsDragging(
bool);
247 virtual void finishEditing();
258 virtual void modifyEditingObjects(
const DtVector& pos,
double altAboveGround);
262 virtual void resetSelectionForEditableObjects();
302 virtual void registerInstance(
const std::string& instanceName,
DtVirtualBaseClass* instance );
342 typedef boost::unordered_map<DtElementID, OriginalInformation>
Editing;
343 typedef std::map<std::string, DtIntervisibilityStateListenerCreator*>
387 virtual const std::string& extension()
const;
std::pair< DtElementID, DtVector > AttachPoint
Definition: DtIntervisibilityDriver.h:48
DtChannel * myHiddenChannel
Definition: DtIntervisibilityDriver.h:369
Virtual base class.
Definition: DtVirtualBaseClass.h:19
A unicode string.
Definition: DtUnicode.h:33
DtBaseConnection * myConnection
Definition: DtIntervisibilityDriver.h:351
const DtBaseConnection * connection() const
Returns the driver's connection (const).
Definition: DtIntervisibilityDriver.h:178
std::vector< AttachPoint > AttachPoints
Definition: DtIntervisibilityDriver.h:49
The DtIntervisibilityElement class implements the common behavior of shape elements that are added to...
Definition: DtIntervisibilityElement.h:32
ElementMap myElements
Definition: DtIntervisibilityDriver.h:347
bool myDistribute
Definition: DtIntervisibilityDriver.h:354
This driver will manage the creation, modification and removal of intervisibility objects...
Definition: DtIntervisibilityDriver.h:40
Contains makVrv:DtSelectionManager class.
DtDe & myDe
Definition: DtIntervisibilityDriver.h:346
DtSignalConnectionManager myProcessorConnections
Definition: DtIntervisibilityDriver.h:362
Creator for the intervisibility driver.
Definition: DtIntervisibilityDriver.h:376
The Simple event processor will emit signals whenever a mouse or keyboard event occurs that would cau...
Definition: DtBasicEditingEventProcessor.h:45
Manager which owns element definitions.for one type of element Use the makVrv::DtElementDefinitionTyp...
Definition: DtElementDefinitionManager.h:44
boost::unordered_map< DtElementID, OriginalInformation > Editing
Definition: DtIntervisibilityDriver.h:342
DtUniqueID DtElementID
The ElementID is a specific type of unique ID used to represent VR-Vantage uniquely defined elements...
Definition: DtUniqueID.h:23
const std::string & className() const
Returns the driver's class name.
Definition: DtIntervisibilityDriver.h:163
The DtIntervisibilityStateListener is a class that will allow intervisibility objects to use start/en...
Definition: DtIntervisibilityStateListener.h:24
bool myAllowEditing
Definition: DtIntervisibilityDriver.h:352
The DtBaseConnection is an abstract class.
Definition: DtBaseConnection.h:34
The abstract Channel Class.
Definition: DtChannel.h:30
boost::unordered_map< DtElementID, DtIntervisibilityElement * > ElementMap
Definition: DtIntervisibilityDriver.h:45
bool myAllowCreating
Definition: DtIntervisibilityDriver.h:353
The DtDriver is an abstract class.
Definition: DtDriver.h:31
std::map< std::string, DtIntervisibilityStateListenerCreator * > ListenerCreatorMap
Definition: DtIntervisibilityDriver.h:344
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
DtVector myEditingAnchorLocation
Definition: DtIntervisibilityDriver.h:365
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
DtIntervisibilityStateListener * myCreationListener
Definition: DtIntervisibilityDriver.h:361
DtSignalConnectionManager myConnections
Definition: DtIntervisibilityDriver.h:356
DtBasicEditingEventProcessor * myProcessor
Definition: DtIntervisibilityDriver.h:349
Utility class for doing global unit conversion.
Definition: DtDisplayUnitsSettingsManager.h:59
boost::unordered_map< DtElementID, DtIntervisibilityStateListener * > ListenerMap
Definition: DtIntervisibilityDriver.h:47
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
Contains makVrv:DtDriver class.
The DtCoordinateSystem is used to manage the current coordinate system of the scene.
Definition: DtCoordinateSystem.h:41
Editing myEditing
Definition: DtIntervisibilityDriver.h:364
Contains makVrv:DtBaseConnection class.
Base class to provide boost signal/slot management.
DtIntervisibilityElement * myCreatingElement
If creating an element via the mouse, these parameters will not not be NULL.
Definition: DtIntervisibilityDriver.h:360
std::vector< DtElementID > UniqueIdList
Definition: DtElementData.h:48
Contains makVrv::DtUniqueID type.
ListenerMap myListeners
Definition: DtIntervisibilityDriver.h:348
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
Connection for the DtIntervisibilityDriver.
Definition: DtIntervisibilityDriver.h:280
ListenerCreatorMap myListenerCreatorMap
Map that will keep track of listener creator by string type.
Definition: DtIntervisibilityDriver.h:368
std::set< DtUniqueID > IdSet
Definition: DtSelectionManager.h:32
DtBaseConnection * connection()
Returns the driver's connection.
Definition: DtIntervisibilityDriver.h:172
Creator for base intervisibility creator.
Definition: DtIntervisibilityStateListener.h:156
DtDe & myDe
Definition: DtIntervisibilityDriver.h:312
std::string myClassName
Definition: DtIntervisibilityDriver.h:350