Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

osgGA::EventQueue Class Reference

EventQueue implementation for collecting and adapting windowing events. More...

Inheritance diagram for osgGA::EventQueue:

Inheritance graph
[legend]
List of all members.

Public Types

typedef std::list< osg::ref_ptr<
GUIEventAdapter > > 
Events

Public Member Functions

 EventQueue (GUIEventAdapter::MouseYOrientation mouseYOrientation=GUIEventAdapter::Y_INCREASING_DOWNWARDS)
void setEvents (Events &events)
 Set events.
bool takeEvents (Events &events)
 Take the entire event queue leaving the EventQueue' event queue empty.
bool copyEvents (Events &events) const
 Take a copy the entire event queue leaving the EventQueue' event queue intact.
void appendEvents (Events &events)
 Add events to end of event queue.
void addEvent (GUIEventAdapter *event)
 Add an event to the end of the event queue.
void setUseFixedMouseInputRange (bool useFixedMouseInputRange)
 Specify if mouse coordinates should be transformed into a pre defined input range, or whether they should be simply based on as local coordinates to the window that generated the mouse events.
bool getUseFixedMouseInputRange ()
 Get whether the mouse coordinates should be transformed into a pre defined input range.
void setMouseInputRange (float xMin, float yMin, float xMax, float yMax)
 Set the mouse input range.
void windowResize (int x, int y, int width, int height)
 Method for adapting window resize event, placing this event on the back of the event queue.
void windowResize (int x, int y, int width, int height, double time)
 Method for adapting window resize event, placing this event on the back of the event queue, with specified time.
void mouseScroll (GUIEventAdapter::ScrollingMotion sm)
 Method for adapting mouse scroll wheel events, placing this event on the back of the event queue.
void mouseScroll (GUIEventAdapter::ScrollingMotion sm, double time)
 Method for adapting mouse scroll wheel events, placing this event on the back of the event queue, with specified time.
void mouseScroll2D (float x, float y)
 Method for adapting mouse scroll wheel events, placing this event on the back of the event queue.
void mouseScroll2D (float x, float y, double time)
 Method for adapting mouse scroll wheel events, placing this event on the back of the event queue.
void penPressure (float pressure)
 Method for adapting pen pressure events, placing this event on the back of the event queue.
void penPressure (float pressure, double time)
 Method for adapting pen pressure events, placing this event on the back of the event queue, with specified time.
void penProximity (GUIEventAdapter::TabletPointerType pt, bool isEntering)
 Method for adapting pen proximity events, placing this event on the back of the event queue.
void penProximity (GUIEventAdapter::TabletPointerType pt, bool isEntering, double time)
 Method for adapting pen proximity events, placing this event on the back of the event queue, with specified time.
void mouseWarped (float x, float y)
 Method for updating in response to a mouse warp.
void mouseMotion (float x, float y)
 Method for adapting mouse motion events, placing this event on the back of the event queue.
void mouseMotion (float x, float y, double time)
 Method for adapting mouse motion events, placing this event on the back of the event queue, with specified time.
void mouseButtonPress (float x, float y, unsigned int button)
 Method for adapting mouse button pressed events, placing this event on the back of the event queue.
void mouseButtonPress (float x, float y, unsigned int button, double time)
 Method for adapting mouse button pressed events, placing this event on the back of the event queue, with specified time.
void mouseDoubleButtonPress (float x, float y, unsigned int button)
 Method for adapting mouse button pressed events, placing this event on the back of the event queue.
void mouseDoubleButtonPress (float x, float y, unsigned int button, double time)
 Method for adapting mouse button pressed events, placing this event on the back of the event queue, with specified time.
void mouseButtonRelease (float x, float y, unsigned int button)
 Method for adapting mouse button release events, placing this event on the back of the event queue.
void mouseButtonRelease (float x, float y, unsigned int button, double time)
 Method for adapting mouse button release events, placing this event on the back of the event queue, with specified time.
void keyPress (int key)
 Method for adapting keyboard press events.
void keyPress (int key, double time)
 Method for adapting keyboard press events.
void keyRelease (int key)
 Method for adapting keyboard press events.
void keyRelease (int key, double time)
 Method for adapting keyboard press events.
void closeWindow ()
 Method for adapting close window events.
void closeWindow (double time)
 Method for adapting close window event with specified event time.
void quitApplication ()
 Method for adapting application quit events.
void quitApplication (double time)
 Method for adapting application quit events with specified event time.
void frame (double time)
 Method for adapting frame events.
void setStartTick (osg::Timer_t tick)
osg::Timer_t getStartTick () const
double getTime () const
GUIEventAdaptercreateEvent ()
 convinience method for create an event ready to fill in.
GUIEventAdaptergetCurrentEventState ()
const GUIEventAdaptergetCurrentEventState () const
void userEvent (osg::Referenced *userEventData)
 Method for adapting user defined events.
void userEvent (osg::Referenced *userEventData, double time)
 Method for adapting user defined events with specified event time.

Protected Member Functions

virtual ~EventQueue ()
EventQueueoperator= (const EventQueue &)
 Prevent unwanted copy operator.

Protected Attributes

osg::ref_ptr< GUIEventAdapter_accumulateEventState
bool _useFixedMouseInputRange
osg::Timer_t _startTick
OpenThreads::Mutex _eventQueueMutex
Events _eventQueue

Detailed Description

EventQueue implementation for collecting and adapting windowing events.


Member Typedef Documentation

typedef std::list< osg::ref_ptr<GUIEventAdapter> > osgGA::EventQueue::Events
 


Constructor & Destructor Documentation

osgGA::EventQueue::EventQueue GUIEventAdapter::MouseYOrientation  mouseYOrientation = GUIEventAdapter::Y_INCREASING_DOWNWARDS  ) 
 

virtual osgGA::EventQueue::~EventQueue  )  [protected, virtual]
 


Member Function Documentation

void osgGA::EventQueue::addEvent GUIEventAdapter event  ) 
 

Add an event to the end of the event queue.

void osgGA::EventQueue::appendEvents Events events  ) 
 

Add events to end of event queue.

void osgGA::EventQueue::closeWindow double  time  ) 
 

Method for adapting close window event with specified event time.

void osgGA::EventQueue::closeWindow  )  [inline]
 

Method for adapting close window events.

bool osgGA::EventQueue::copyEvents Events events  )  const
 

Take a copy the entire event queue leaving the EventQueue' event queue intact.

GUIEventAdapter* osgGA::EventQueue::createEvent  ) 
 

convinience method for create an event ready to fill in.

Clones the getCurrentEventState() to produce a up to date event state.

void osgGA::EventQueue::frame double  time  ) 
 

Method for adapting frame events.

const GUIEventAdapter* osgGA::EventQueue::getCurrentEventState  )  const [inline]
 

GUIEventAdapter* osgGA::EventQueue::getCurrentEventState  )  [inline]
 

osg::Timer_t osgGA::EventQueue::getStartTick  )  const [inline]
 

double osgGA::EventQueue::getTime  )  const [inline]
 

bool osgGA::EventQueue::getUseFixedMouseInputRange  )  [inline]
 

Get whether the mouse coordinates should be transformed into a pre defined input range.

void osgGA::EventQueue::keyPress int  key,
double  time
 

Method for adapting keyboard press events.

Note, special keys such as Ctrl/Function keys should be adapted to GUIEventAdapter::KeySymbol mappings, with specified time.

void osgGA::EventQueue::keyPress int  key  )  [inline]
 

Method for adapting keyboard press events.

Note, special keys such as Ctrl/Function keys should be adapted to GUIEventAdapter::KeySymbol mappings.

void osgGA::EventQueue::keyRelease int  key,
double  time
 

Method for adapting keyboard press events.

Note, special keys such as Ctrl/Function keys should be adapted to GUIEventAdapter::KeySymbol mappings, with specified time.

void osgGA::EventQueue::keyRelease int  key  )  [inline]
 

Method for adapting keyboard press events.

Note, special keys such as Ctrl/Function keys should be adapted to GUIEventAdapter::KeySymbol mappings.

void osgGA::EventQueue::mouseButtonPress float  x,
float  y,
unsigned int  button,
double  time
 

Method for adapting mouse button pressed events, placing this event on the back of the event queue, with specified time.

Button numbering is 1 for left mouse button, 2 for middle, 3 for right.

void osgGA::EventQueue::mouseButtonPress float  x,
float  y,
unsigned int  button
[inline]
 

Method for adapting mouse button pressed events, placing this event on the back of the event queue.

Button numbering is 1 for left mouse button, 2 for middle, 3 for right.

void osgGA::EventQueue::mouseButtonRelease float  x,
float  y,
unsigned int  button,
double  time
 

Method for adapting mouse button release events, placing this event on the back of the event queue, with specified time.

Button numbering is 1 for left mouse button, 2 for middle, 3 for right.

void osgGA::EventQueue::mouseButtonRelease float  x,
float  y,
unsigned int  button
[inline]
 

Method for adapting mouse button release events, placing this event on the back of the event queue.

Button numbering is 1 for left mouse button, 2 for middle, 3 for right.

void osgGA::EventQueue::mouseDoubleButtonPress float  x,
float  y,
unsigned int  button,
double  time
 

Method for adapting mouse button pressed events, placing this event on the back of the event queue, with specified time.

Button numbering is 1 for left mouse button, 2 for middle, 3 for right.

void osgGA::EventQueue::mouseDoubleButtonPress float  x,
float  y,
unsigned int  button
[inline]
 

Method for adapting mouse button pressed events, placing this event on the back of the event queue.

Button numbering is 1 for left mouse button, 2 for middle, 3 for right.

void osgGA::EventQueue::mouseMotion float  x,
float  y,
double  time
 

Method for adapting mouse motion events, placing this event on the back of the event queue, with specified time.

void osgGA::EventQueue::mouseMotion float  x,
float  y
[inline]
 

Method for adapting mouse motion events, placing this event on the back of the event queue.

void osgGA::EventQueue::mouseScroll GUIEventAdapter::ScrollingMotion  sm,
double  time
 

Method for adapting mouse scroll wheel events, placing this event on the back of the event queue, with specified time.

void osgGA::EventQueue::mouseScroll GUIEventAdapter::ScrollingMotion  sm  )  [inline]
 

Method for adapting mouse scroll wheel events, placing this event on the back of the event queue.

void osgGA::EventQueue::mouseScroll2D float  x,
float  y,
double  time
 

Method for adapting mouse scroll wheel events, placing this event on the back of the event queue.

void osgGA::EventQueue::mouseScroll2D float  x,
float  y
[inline]
 

Method for adapting mouse scroll wheel events, placing this event on the back of the event queue.

void osgGA::EventQueue::mouseWarped float  x,
float  y
 

Method for updating in response to a mouse warp.

Note, just moves the mouse position without creating a new event for it.

EventQueue& osgGA::EventQueue::operator= const EventQueue  )  [inline, protected]
 

Prevent unwanted copy operator.

void osgGA::EventQueue::penPressure float  pressure,
double  time
 

Method for adapting pen pressure events, placing this event on the back of the event queue, with specified time.

void osgGA::EventQueue::penPressure float  pressure  )  [inline]
 

Method for adapting pen pressure events, placing this event on the back of the event queue.

void osgGA::EventQueue::penProximity GUIEventAdapter::TabletPointerType  pt,
bool  isEntering,
double  time
 

Method for adapting pen proximity events, placing this event on the back of the event queue, with specified time.

void osgGA::EventQueue::penProximity GUIEventAdapter::TabletPointerType  pt,
bool  isEntering
[inline]
 

Method for adapting pen proximity events, placing this event on the back of the event queue.

void osgGA::EventQueue::quitApplication double  time  ) 
 

Method for adapting application quit events with specified event time.

void osgGA::EventQueue::quitApplication  )  [inline]
 

Method for adapting application quit events.

void osgGA::EventQueue::setEvents Events events  ) 
 

Set events.

void osgGA::EventQueue::setMouseInputRange float  xMin,
float  yMin,
float  xMax,
float  yMax
[inline]
 

Set the mouse input range.

void osgGA::EventQueue::setStartTick osg::Timer_t  tick  )  [inline]
 

void osgGA::EventQueue::setUseFixedMouseInputRange bool  useFixedMouseInputRange  )  [inline]
 

Specify if mouse coordinates should be transformed into a pre defined input range, or whether they should be simply based on as local coordinates to the window that generated the mouse events.

bool osgGA::EventQueue::takeEvents Events events  ) 
 

Take the entire event queue leaving the EventQueue' event queue empty.

void osgGA::EventQueue::userEvent osg::Referenced userEventData,
double  time
 

Method for adapting user defined events with specified event time.

void osgGA::EventQueue::userEvent osg::Referenced userEventData  )  [inline]
 

Method for adapting user defined events.

void osgGA::EventQueue::windowResize int  x,
int  y,
int  width,
int  height,
double  time
 

Method for adapting window resize event, placing this event on the back of the event queue, with specified time.

void osgGA::EventQueue::windowResize int  x,
int  y,
int  width,
int  height
[inline]
 

Method for adapting window resize event, placing this event on the back of the event queue.


Member Data Documentation

osg::ref_ptr<GUIEventAdapter> osgGA::EventQueue::_accumulateEventState [protected]
 

Events osgGA::EventQueue::_eventQueue [protected]
 

OpenThreads::Mutex osgGA::EventQueue::_eventQueueMutex [mutable, protected]
 

osg::Timer_t osgGA::EventQueue::_startTick [protected]
 

bool osgGA::EventQueue::_useFixedMouseInputRange [protected]
 


The documentation for this class was generated from the following file:
Generated at Fri Jun 15 16:31:14 2007 for the OpenSceneGraph by doxygen 1.4.4.