VR-Forces 4.3 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members | Public Member Functions | Protected Member Functions | Protected Attributes
makVrv::DtChannel Class Reference

The abstract Channel Class. More...

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

Public Member Functions

virtual ~DtChannel ()
 DTOR.
DtObserverObjectfindObserver () const
 Attempt to get the observer for the channel.
unsigned int currentModelSet () const
 Get the current model set.
virtual void setClearColor (float r, float g, float b, float a)=0
 Set the clear color of the channel.
virtual void setViewport (int x, int y, int width, int height)=0
 Set the viewport of the channel.
virtual void getViewport (int &x, int &y, int &width, int &height) const =0
 Get the viewport.
virtual void setWindow (DtWindow *)=0
 Set the window the channel is displayed on.
virtual void setCameraPosition (double x, double y, double z)=0
 Set the channel's camera position.
virtual const DtWindowwindow () const =0
 Get the window the channel is displayed on.
virtual void update ()=0
 Update a channel.
const DtChannelConfigurationconfiguration () const
 Get the configuration.
virtual void updateProjection ()=0
 This method is called when ever the channel's projection matrix needs to be updated.
virtual void setObserverName (const std::string &observerName)
 set the name of the observer to use, and attempt to connect
virtual void setSensorName (const std::string &sensorName)=0
 Set the name of the sensor to use.
*virtual void setProjectionResizePolicy (DtChannelConfiguration::ProjectionResizePolicy policy)
 Set the policy used to determine if and how the projection matrix should be adjusted on window resizes.
*virtual
DtChannelConfiguration::ProjectionResizePolicy 
projectionResizePolicy () const
 Get the policy used to determine if and how the projection matrix should be adjusted on window resizes.
virtual bool processMouseEvent (const DtMouseEvent &ev)=0
 attempt to handle a mouse event with the channel's overlay
virtual bool processKeyboardEvent (const DtKeyEvent &ev)=0
 attempt to handle a keyboard event with the channel's overlay
virtual void projectToScreen (double dbX, double dbY, double dbZ, double &screenX, double &screenY, double &screenZ)=0
 project the given local (Or database) coordinates into screen coordinates
virtual void projectToWorld (double screenX, double screenY, double &dbX, double &dbY, double &dbZ)=0
 project the local database coordinates given screen coordinates
virtual void moveMouseToScreenLocation (float pixelX, float pixelY)=0
 Places the mouse cursor at the specified x/y position on the screen.
std::string & observerName ()
 Retrieve the observer name for this channel.

Protected Member Functions

 DtChannel (DtDe &de, DtChannelConfiguration &)
 The constructor for an abstract class is not public.
virtual void setProjectionMatrixAsPerspective (double fovy, double aspectRatio, double zNear, double zFar)=0
 Create a symmetrical perspective projection, See OpenGL gluPerspective documentation for further details.
virtual void setProjectionMatrixAsFrustum (double left, double right, double bottom, double topz, double zNear, double zFar)=0
 Set to a perspective projection.
virtual void connectToObserver ()=0
void observerAdded (const std::string &observerName)
void observerRemoved (const std::string &observerName)

Protected Attributes

DtDemyDe
DtChannelConfigurationmyChannelConfiguration
DtSignalConnectionManager myConnections
int myModelSet
DtObserverObjectmyObserver
std::string myObserverName
DtChannelConfiguration::ProjectionResizePolicy myProjectionResizePolicy

Detailed Description

The abstract Channel Class.

Constructor & Destructor Documentation

makVrv::DtChannel::DtChannel ( DtDe de,
DtChannelConfiguration  
)
protected

The constructor for an abstract class is not public.

virtual makVrv::DtChannel::~DtChannel ( )
virtual

DTOR.

Member Function Documentation

DtObserverObject* makVrv::DtChannel::findObserver ( ) const

Attempt to get the observer for the channel.

unsigned int makVrv::DtChannel::currentModelSet ( ) const

Get the current model set.

virtual void makVrv::DtChannel::setClearColor ( float  r,
float  g,
float  b,
float  a 
)
pure virtual

Set the clear color of the channel.

Implemented in makVrv::DtOsgChannel.

virtual void makVrv::DtChannel::setViewport ( int  x,
int  y,
int  width,
int  height 
)
pure virtual

Set the viewport of the channel.

Implemented in makVrv::DtOsgChannel.

virtual void makVrv::DtChannel::getViewport ( int x,
int y,
int width,
int height 
) const
pure virtual

Get the viewport.

Implemented in makVrv::DtOsgChannel.

virtual void makVrv::DtChannel::setWindow ( DtWindow )
pure virtual

Set the window the channel is displayed on.

Implemented in makVrv::DtOsgChannel.

virtual void makVrv::DtChannel::setCameraPosition ( double  x,
double  y,
double  z 
)
pure virtual

Set the channel's camera position.

Implemented in makVrv::DtOsgChannel.

virtual const DtWindow* makVrv::DtChannel::window ( ) const
pure virtual

Get the window the channel is displayed on.

Implemented in makVrv::DtOsgChannel.

virtual void makVrv::DtChannel::update ( )
pure virtual

Update a channel.

Implemented in makVrv::DtOsgChannel, and makVrv::DtOculusChannel.

const DtChannelConfiguration& makVrv::DtChannel::configuration ( ) const

Get the configuration.

virtual void makVrv::DtChannel::updateProjection ( )
pure virtual

This method is called when ever the channel's projection matrix needs to be updated.

Implemented in makVrv::DtOsgChannel, and makVrv::DtOculusChannel.

virtual void makVrv::DtChannel::setObserverName ( const std::string &  observerName)
virtual

set the name of the observer to use, and attempt to connect

virtual void makVrv::DtChannel::setSensorName ( const std::string &  sensorName)
pure virtual

Set the name of the sensor to use.

The special name defined by DtChannelManager::UseObserverSensor causes the channel to use the sensor specified by its observer

Implemented in makVrv::DtOsgChannel.

* virtual void makVrv::DtChannel::setProjectionResizePolicy ( DtChannelConfiguration::ProjectionResizePolicy  policy)
virtual

Set the policy used to determine if and how the projection matrix should be adjusted on window resizes.

Reimplemented in makVrv::DtOsgChannel.

* virtual DtChannelConfiguration::ProjectionResizePolicy makVrv::DtChannel::projectionResizePolicy ( ) const
virtual

Get the policy used to determine if and how the projection matrix should be adjusted on window resizes.

virtual bool makVrv::DtChannel::processMouseEvent ( const DtMouseEvent ev)
pure virtual

attempt to handle a mouse event with the channel's overlay

Implemented in makVrv::DtOsgChannel.

virtual bool makVrv::DtChannel::processKeyboardEvent ( const DtKeyEvent ev)
pure virtual

attempt to handle a keyboard event with the channel's overlay

Implemented in makVrv::DtOsgChannel.

virtual void makVrv::DtChannel::projectToScreen ( double  dbX,
double  dbY,
double  dbZ,
double &  screenX,
double &  screenY,
double &  screenZ 
)
pure virtual

project the given local (Or database) coordinates into screen coordinates

Implemented in makVrv::DtOsgChannel.

virtual void makVrv::DtChannel::projectToWorld ( double  screenX,
double  screenY,
double &  dbX,
double &  dbY,
double &  dbZ 
)
pure virtual

project the local database coordinates given screen coordinates

Implemented in makVrv::DtOsgChannel.

virtual void makVrv::DtChannel::moveMouseToScreenLocation ( float  pixelX,
float  pixelY 
)
pure virtual

Places the mouse cursor at the specified x/y position on the screen.

Implemented in makVrv::DtOsgChannel.

std::string& makVrv::DtChannel::observerName ( )

Retrieve the observer name for this channel.

virtual void makVrv::DtChannel::setProjectionMatrixAsPerspective ( double  fovy,
double  aspectRatio,
double  zNear,
double  zFar 
)
protectedpure virtual

Create a symmetrical perspective projection, See OpenGL gluPerspective documentation for further details.

Implemented in makVrv::DtOsgChannel.

virtual void makVrv::DtChannel::setProjectionMatrixAsFrustum ( double  left,
double  right,
double  bottom,
double  topz,
double  zNear,
double  zFar 
)
protectedpure virtual

Set to a perspective projection.

Implemented in makVrv::DtOsgChannel.

virtual void makVrv::DtChannel::connectToObserver ( )
protectedpure virtual

Implemented in makVrv::DtOsgChannel.

void makVrv::DtChannel::observerAdded ( const std::string &  observerName)
protected
void makVrv::DtChannel::observerRemoved ( const std::string &  observerName)
protected

Member Data Documentation

DtDe& makVrv::DtChannel::myDe
protected
DtChannelConfiguration& makVrv::DtChannel::myChannelConfiguration
protected
DtSignalConnectionManager makVrv::DtChannel::myConnections
protected
int makVrv::DtChannel::myModelSet
protected
DtObserverObject* makVrv::DtChannel::myObserver
protected
std::string makVrv::DtChannel::myObserverName
protected
DtChannelConfiguration::ProjectionResizePolicy makVrv::DtChannel::myProjectionResizePolicy
protected

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

Document ID: Generated on Wed Mar 11 21:20:57 EDT 2015 from SVN revision 150940
Copyright © 2005-2014 VT MÄK. All Rights Reserved (www.mak.com)