VR-Forces 4.1.1 Class Documentation
List of all members | Classes | Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes
makVrv::DtOsgOverlayManager Class Reference

The OSG overlay manager managers 2D graphical overlays. More...

Inheritance diagram for makVrv::DtOsgOverlayManager:
Inheritance graph
[legend]

Classes

class  DtPickableOverlay

Public Member Functions

 DtOsgOverlayManager (DtDe &de)
 CTOR.
 ~DtOsgOverlayManager ()
 DTOR.
DtDede ()
virtual bool handleMouseEvent (const DtMouseEvent &ev, DtChannel &channel)
 Handle a mouse event returns true if the event was consumed.
bool processWidgetEvent (DtElementID id, const DtMouseEvent &ev, DtChannel &channel)
 Process event on the element.
virtual void render (DtChannel *channel, bool projectedGeocentricEffect, float projectedGeocentricAlpha, double *position, double *matrix, double viewportSize[2])
 Render.
virtual void releaseResources ()
 Release any resources.
virtual
DtOsgOverlayResourceProvider
resourceProvider ()
 Get the resource provider.
DtOverlayRendereroverlayRenderer (unsigned int layerId)
 Get the renderer for any layer.
DtOverlayRendereroverlayRenderer (DtChannel *channel)
 Get the renderer for a channel-specific layer.
DtOverlayRendereroverlayRenderer3D (DtChannel *channel)
DtOverlayRendereroverlayRenderer (DtChannel *channel, int modelSet)
 Get the renderer for a channel-specific layer.
virtual void enableOverlayOnChannel (unsigned int layerId, bool enabled, DtChannel &channel)
 Enable an overlay on a channel.
virtual void enableModelSetOnChannel (int modelSet, bool enabled, DtChannel &channel)
 Enables the model set on the channel to display or not.
DtWidgetPickerwidgetPicker (unsigned int layerId)
 Get the widget picker for any layer.
DtWidgetPickerwidgetPicker (DtChannel *channel)
 Get the widget picker for a channel-specific layer.
DtWidgetPickerwidgetPicker3D (DtChannel *channel)
DtWidgetPickerwidgetPicker (DtChannel *channel, int modelSet)
 Get the widget picker for a channel-specific layer. Uses eye position camera.
virtual void destroyOverlayLayer (unsigned int layerId)
 Clear and destroy an overlay layer.
virtual bool overlayLayerIsVisible (unsigned int layerId) const
 Get whether an overlay layer is visible.
virtual void setOverlayLayerVisibility (unsigned int layerId, bool visible)
 Set whether an overlay layer is visible.
virtual void setPerformanceStatsOverlayEnabled (bool show)
 Set whether IG performance stats overlay is enabled.
virtual bool performanceStatsOverlayEnabled () const
 Get whether IG performance stats overlay is enabled.
- Public Member Functions inherited from makVrv::DtOverlayManager
 DtOverlayManager ()
 ~DtOverlayManager ()

Protected Types

typedef boost::unordered_map
< DtChannel *, unsigned int > 
ChannelSpecificOverlayMap
typedef boost::unordered_map
< DtChannel *, std::map< int,
unsigned int > > 
ChannelModelSetOverlayMap
typedef boost::unordered_map
< unsigned int,
DtPickableOverlay * > 
OverlayMap
typedef boost::unordered_map
< DtChannel *, std::set
< unsigned int > > 
ChannelOverlayMap

Protected Member Functions

virtual void slot_channelToBeDestroyed (DtChannel *)
 Remove channel-specific overlay, if one exists.
unsigned int allocateChannelSpecificLayerId ()
 Get an unused channel specific layer id; throws exception if none are left.
void destroyChannelSpecificOverlayLayer (const ChannelSpecificOverlayMap &map, DtChannel *channel)
DtOverlayRendereroverlayRenderer (ChannelSpecificOverlayMap &map, DtChannel *channel)
 Get the renderer for a channel-specific layer.
DtWidgetPickerwidgetPicker (ChannelSpecificOverlayMap &map, DtChannel *channel)
 Get the widget picker for a channel-specific layer.
virtual void destroyChannelModelSetOverlayLayers (DtChannel *)
 Destroys the supplied channel and model set overlay layer.

Protected Attributes

DtDemyDe
DtSignalConnectionManager myConnections
OverlayMap myOverlays
ChannelOverlayMap myChannelOverlayMap
ChannelSpecificOverlayMap myChannelSpecific2DOverlayMap
ChannelModelSetOverlayMap myChannelModelSetOverlayMap
ChannelSpecificOverlayMap myChannelSpecific3DOverlayMap
bool myChannelSpecificLayerIdUsageList [Channel_SpecificEnd-Channel_SpecificStart+1]
DtOsgOverlayResourceProvidermyProvider

Additional Inherited Members

- Public Types inherited from makVrv::DtOverlayManager
enum  DefaultOverlays {
  InvalidOverlay = 0, ModelSet_3D_Overlay, ModelSet_3D_XR_Overlay, ModelSet_3D_Sensor_Overlay,
  ModelSet_3D_Icons_Overlay, ModelSet_3D_Images_Overlay, ModelSet_2D_Icons_Overlay, ModelSet_2D_Images_Overlay,
  ModelSet_UserStart, ModelSet_UserEnd = ModelSet_UserStart + 16, Channel_SpecificStart, Channel_SpecificEnd = Channel_SpecificStart + 128,
  RemoteDisplayOverlay, RemoteDisplayWorldOverlay
}
- Static Public Member Functions inherited from makVrv::DtOverlayManager
static DefaultOverlays modelSetToOverlay (unsigned int modelSet)
 Convert model set to overlay.

Detailed Description

The OSG overlay manager managers 2D graphical overlays.

Member Typedef Documentation

typedef boost::unordered_map<DtChannel*, unsigned int> makVrv::DtOsgOverlayManager::ChannelSpecificOverlayMap
protected
typedef boost::unordered_map<DtChannel*, std::map<int, unsigned int> > makVrv::DtOsgOverlayManager::ChannelModelSetOverlayMap
protected
typedef boost::unordered_map<unsigned int,DtPickableOverlay*> makVrv::DtOsgOverlayManager::OverlayMap
protected
typedef boost::unordered_map<DtChannel*, std::set<unsigned int> > makVrv::DtOsgOverlayManager::ChannelOverlayMap
protected

Constructor & Destructor Documentation

makVrv::DtOsgOverlayManager::DtOsgOverlayManager ( DtDe de)

CTOR.

makVrv::DtOsgOverlayManager::~DtOsgOverlayManager ( )

DTOR.

Member Function Documentation

DtDe& makVrv::DtOsgOverlayManager::de ( )
inline
virtual bool makVrv::DtOsgOverlayManager::handleMouseEvent ( const DtMouseEvent ev,
DtChannel channel 
)
virtual

Handle a mouse event returns true if the event was consumed.

returns false if it was not.

Implements makVrv::DtOverlayManager.

bool makVrv::DtOsgOverlayManager::processWidgetEvent ( DtElementID  id,
const DtMouseEvent ev,
DtChannel channel 
)

Process event on the element.

Returns
true if the event was consumed. returns false if it was not.
virtual void makVrv::DtOsgOverlayManager::render ( DtChannel channel,
bool  projectedGeocentricEffect,
float  projectedGeocentricAlpha,
double *  position,
double *  matrix,
double  viewportSize[2] 
)
virtual

Render.

Implements makVrv::DtOverlayManager.

virtual void makVrv::DtOsgOverlayManager::releaseResources ( )
virtual

Release any resources.

Implements makVrv::DtOverlayManager.

virtual DtOsgOverlayResourceProvider* makVrv::DtOsgOverlayManager::resourceProvider ( )
virtual

Get the resource provider.

DtOverlayRenderer& makVrv::DtOsgOverlayManager::overlayRenderer ( unsigned int  layerId)

Get the renderer for any layer.

DtOverlayRenderer& makVrv::DtOsgOverlayManager::overlayRenderer ( DtChannel channel)

Get the renderer for a channel-specific layer.

This overlay will return a layer where the camera maintains a fixed position

DtOverlayRenderer& makVrv::DtOsgOverlayManager::overlayRenderer3D ( DtChannel channel)
DtOverlayRenderer& makVrv::DtOsgOverlayManager::overlayRenderer ( DtChannel channel,
int  modelSet 
)

Get the renderer for a channel-specific layer.

This overlay will return a layer where the camera is the current eye position in the channel

virtual void makVrv::DtOsgOverlayManager::enableOverlayOnChannel ( unsigned int  layerId,
bool  enabled,
DtChannel channel 
)
virtual

Enable an overlay on a channel.

Implements makVrv::DtOverlayManager.

virtual void makVrv::DtOsgOverlayManager::enableModelSetOnChannel ( int  modelSet,
bool  enabled,
DtChannel channel 
)
virtual

Enables the model set on the channel to display or not.

If the model set channel combination does not exist, will create a renderer on the model set/channel combination before enabling if "enabled" is true

DtWidgetPicker& makVrv::DtOsgOverlayManager::widgetPicker ( unsigned int  layerId)

Get the widget picker for any layer.

DtWidgetPicker& makVrv::DtOsgOverlayManager::widgetPicker ( DtChannel channel)

Get the widget picker for a channel-specific layer.

Uses fixed position camera

DtWidgetPicker& makVrv::DtOsgOverlayManager::widgetPicker3D ( DtChannel channel)
DtWidgetPicker& makVrv::DtOsgOverlayManager::widgetPicker ( DtChannel channel,
int  modelSet 
)

Get the widget picker for a channel-specific layer. Uses eye position camera.

virtual void makVrv::DtOsgOverlayManager::destroyOverlayLayer ( unsigned int  layerId)
virtual

Clear and destroy an overlay layer.

Implements makVrv::DtOverlayManager.

virtual bool makVrv::DtOsgOverlayManager::overlayLayerIsVisible ( unsigned int  layerId) const
virtual

Get whether an overlay layer is visible.

Implements makVrv::DtOverlayManager.

virtual void makVrv::DtOsgOverlayManager::setOverlayLayerVisibility ( unsigned int  layerId,
bool  visible 
)
virtual

Set whether an overlay layer is visible.

Parameters
Input
visibletrue if to show the layer, false if to hide the layer.

Implements makVrv::DtOverlayManager.

virtual void makVrv::DtOsgOverlayManager::setPerformanceStatsOverlayEnabled ( bool  show)
virtual

Set whether IG performance stats overlay is enabled.

Implements makVrv::DtOverlayManager.

virtual bool makVrv::DtOsgOverlayManager::performanceStatsOverlayEnabled ( ) const
virtual

Get whether IG performance stats overlay is enabled.

Implements makVrv::DtOverlayManager.

virtual void makVrv::DtOsgOverlayManager::slot_channelToBeDestroyed ( DtChannel )
protectedvirtual

Remove channel-specific overlay, if one exists.

unsigned int makVrv::DtOsgOverlayManager::allocateChannelSpecificLayerId ( )
protected

Get an unused channel specific layer id; throws exception if none are left.

void makVrv::DtOsgOverlayManager::destroyChannelSpecificOverlayLayer ( const ChannelSpecificOverlayMap map,
DtChannel channel 
)
protected
DtOverlayRenderer& makVrv::DtOsgOverlayManager::overlayRenderer ( ChannelSpecificOverlayMap map,
DtChannel channel 
)
protected

Get the renderer for a channel-specific layer.

DtWidgetPicker& makVrv::DtOsgOverlayManager::widgetPicker ( ChannelSpecificOverlayMap map,
DtChannel channel 
)
protected

Get the widget picker for a channel-specific layer.

Uses fixed camera position for the channel

virtual void makVrv::DtOsgOverlayManager::destroyChannelModelSetOverlayLayers ( DtChannel )
protectedvirtual

Destroys the supplied channel and model set overlay layer.

Called when a channel is destroyed

Member Data Documentation

DtDe& makVrv::DtOsgOverlayManager::myDe
protected
DtSignalConnectionManager makVrv::DtOsgOverlayManager::myConnections
protected
OverlayMap makVrv::DtOsgOverlayManager::myOverlays
protected
ChannelOverlayMap makVrv::DtOsgOverlayManager::myChannelOverlayMap
protected
ChannelSpecificOverlayMap makVrv::DtOsgOverlayManager::myChannelSpecific2DOverlayMap
protected
ChannelModelSetOverlayMap makVrv::DtOsgOverlayManager::myChannelModelSetOverlayMap
protected
ChannelSpecificOverlayMap makVrv::DtOsgOverlayManager::myChannelSpecific3DOverlayMap
protected
bool makVrv::DtOsgOverlayManager::myChannelSpecificLayerIdUsageList[Channel_SpecificEnd-Channel_SpecificStart+1]
protected
DtOsgOverlayResourceProvider* makVrv::DtOsgOverlayManager::myProvider
protected

The documentation for this class was generated from the following file:

Document ID: Generated on Mon Apr 8 19:24:01 EDT 2013 from SVN revision 125877
Copyright © 2005-2013 VT MÄK. All Rights Reserved (www.mak.com)