|
openscenegraph
|
#include <EventQueue>
Public Types | |
| typedef std::list< osg::ref_ptr< Event > > | Events |
Protected Member Functions | |
| virtual | ~EventQueue () |
| EventQueue & | operator= (const EventQueue &) |
| Protected Member Functions inherited from osg::Referenced | |
| virtual | ~Referenced () |
| void | signalObserversAndDelete (bool signalDelete, bool doDelete) const |
| void | deleteUsingDeleteHandler () const |
Protected Attributes | |
| osg::ref_ptr< GUIEventAdapter > | _accumulateEventState |
| bool | _useFixedMouseInputRange |
| osg::Timer_t | _startTick |
| OpenThreads::Mutex | _eventQueueMutex |
| Events | _eventQueue |
| bool | _firstTouchEmulatesMouse |
| Protected Attributes inherited from osg::Referenced | |
| OpenThreads::AtomicPtr | _observerSet |
| OpenThreads::Atomic | _refCount |
Additional Inherited Members | |
| Static Public Member Functions inherited from osg::Referenced | |
| static OpenThreads::Mutex * | getGlobalReferencedMutex () |
| static void | setDeleteHandler (DeleteHandler *handler) |
| static DeleteHandler * | getDeleteHandler () |
EventQueue implementation for collecting and adapting windowing events
| typedef std::list< osg::ref_ptr<Event> > osgGA::EventQueue::Events |
| osgGA::EventQueue::EventQueue | ( | GUIEventAdapter::MouseYOrientation | mouseYOrientation = GUIEventAdapter::Y_INCREASING_DOWNWARDS | ) |
References osgGA::GUIEventAdapter::Y_INCREASING_DOWNWARDS.
Referenced by operator=().
|
protectedvirtual |
| void osgGA::EventQueue::addEvent | ( | Event * | 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::clear | ( | ) |
clear all events from queue.
Referenced by setStartTick().
|
inline |
Method for adapting close window events.
References closeWindow(), and getTime().
Referenced by closeWindow().
| osgGA::GUIEventAdapter * osgGA::EventQueue::closeWindow | ( | double | time | ) |
Method for adapting close window event with specified event time.
| bool osgGA::EventQueue::copyEvents | ( | Events & | events | ) | const |
Take a copy the entire event queue leaving the EventQueue' event queue intact.
| GUIEventAdapter * osgGA::EventQueue::createEvent | ( | ) |
convenience method for create an event ready to fill in. Clones the getCurrentEventState() to produce a up to date event state.
|
inline |
References _eventQueue, and _eventQueueMutex.
| osgGA::GUIEventAdapter * osgGA::EventQueue::frame | ( | double | time | ) |
Method for adapting frame events.
|
inline |
References _accumulateEventState.
Referenced by getGraphicsContext(), getGraphicsContext(), setGraphicsContext(), and setMouseInputRange().
|
inline |
References _accumulateEventState.
|
inline |
References _firstTouchEmulatesMouse.
|
inline |
References getCurrentEventState().
|
inline |
References getCurrentEventState().
|
inline |
References _startTick.
|
inline |
References _startTick, osg::Timer::delta_s(), and osg::Timer::instance().
Referenced by closeWindow(), keyPress(), keyRelease(), mouseButtonPress(), mouseButtonRelease(), mouseDoubleButtonPress(), mouseMotion(), mouseScroll(), mouseScroll2D(), penOrientation(), penPressure(), penProximity(), quitApplication(), touchBegan(), touchEnded(), touchMoved(), userEvent(), and windowResize().
|
inline |
Get whether the mouse coordinates should be transformed into a pre defined input range.
References _useFixedMouseInputRange.
| osgGA::GUIEventAdapter * osgGA::EventQueue::keyPress | ( | int | key, |
| double | time, | ||
| int | unmodifiedKey = 0 ) |
Method for adapting keyboard press events. Note, special keys such as Ctrl/Function keys should be adapted to GUIEventAdapter::KeySymbol mappings, with specified time.
|
inline |
Method for adapting keyboard press events. Note, special keys such as Ctrl/Function keys should be adapted to GUIEventAdapter::KeySymbol mappings.
References getTime(), and keyPress().
Referenced by keyPress().
| osgGA::GUIEventAdapter * osgGA::EventQueue::keyRelease | ( | int | key, |
| double | time, | ||
| int | unmodifiedKey = 0 ) |
Method for adapting keyboard press events. Note, special keys such as Ctrl/Function keys should be adapted to GUIEventAdapter::KeySymbol mappings, with specified time.
|
inline |
Method for adapting keyboard press events. Note, special keys such as Ctrl/Function keys should be adapted to GUIEventAdapter::KeySymbol mappings.
References getTime(), and keyRelease().
Referenced by keyRelease().
|
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.
References getTime(), and mouseButtonPress().
Referenced by mouseButtonPress().
| osgGA::GUIEventAdapter * 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.
|
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.
References getTime(), and mouseButtonRelease().
Referenced by mouseButtonRelease().
| osgGA::GUIEventAdapter * 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.
|
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.
References getTime(), and mouseDoubleButtonPress().
Referenced by mouseDoubleButtonPress().
| osgGA::GUIEventAdapter * 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.
|
inline |
Method for adapting mouse motion events, placing this event on the back of the event queue.
References getTime(), and mouseMotion().
Referenced by mouseMotion().
| osgGA::GUIEventAdapter * 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.
|
inline |
Method for adapting mouse scroll wheel events, placing this event on the back of the event queue.
References getTime(), and mouseScroll().
Referenced by mouseScroll().
| osgGA::GUIEventAdapter * 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.
|
inline |
Method for adapting mouse scroll wheel events, placing this event on the back of the event queue.
References getTime(), and mouseScroll2D().
Referenced by mouseScroll2D().
| osgGA::GUIEventAdapter * 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::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.
|
inlineprotected |
Prevent unwanted copy operator.
References EventQueue().
|
inline |
Method for adapting pen orientation events, placing this event on the back of the event queue.
References getTime(), and penOrientation().
Referenced by penOrientation().
| osgGA::GUIEventAdapter * osgGA::EventQueue::penOrientation | ( | float | tiltX, |
| float | tiltY, | ||
| float | rotation, | ||
| double | time ) |
Method for adapting pen orientation events, placing this event on the back of the event queue, with specified time.
|
inline |
Method for adapting pen pressure events, placing this event on the back of the event queue.
References getTime(), and penPressure().
Referenced by penPressure().
| osgGA::GUIEventAdapter * 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.
|
inline |
Method for adapting pen proximity events, placing this event on the back of the event queue.
References getTime(), and penProximity().
Referenced by penProximity().
| osgGA::GUIEventAdapter * 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.
|
inline |
Method for adapting application quit events.
References getTime(), and quitApplication().
Referenced by quitApplication().
| osgGA::GUIEventAdapter * osgGA::EventQueue::quitApplication | ( | double | time | ) |
Method for adapting application quit events with specified event time.
|
inline |
References _accumulateEventState.
| void osgGA::EventQueue::setEvents | ( | Events & | events | ) |
Set events.
|
inline |
References _firstTouchEmulatesMouse.
|
inline |
Set the graphics context associated with this event queue.
References getCurrentEventState().
|
inline |
Set the mouse input range.
References getCurrentEventState().
|
inline |
References _startTick, and clear().
|
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.
References _useFixedMouseInputRange.
| void osgGA::EventQueue::syncWindowRectangleWithGraphicsContext | ( | ) |
Read the window record dimensions from the graphics context.
| bool osgGA::EventQueue::takeEvents | ( | Events & | events | ) |
Take the entire event queue leaving the EventQueue' event queue empty.
| bool osgGA::EventQueue::takeEvents | ( | Events & | events, |
| double | cutOffTime ) |
Take the events that were recorded before with specified time queue.
|
inline |
References getTime(), and touchBegan().
| GUIEventAdapter * osgGA::EventQueue::touchBegan | ( | unsigned int | id, |
| GUIEventAdapter::TouchPhase | phase, | ||
| float | x, | ||
| float | y, | ||
| double | time ) |
Referenced by touchBegan().
|
inline |
References getTime(), and touchEnded().
| GUIEventAdapter * osgGA::EventQueue::touchEnded | ( | unsigned int | id, |
| GUIEventAdapter::TouchPhase | phase, | ||
| float | x, | ||
| float | y, | ||
| unsigned int | tap_count, | ||
| double | time ) |
Referenced by touchEnded().
|
inline |
References getTime(), and touchMoved().
| GUIEventAdapter * osgGA::EventQueue::touchMoved | ( | unsigned int | id, |
| GUIEventAdapter::TouchPhase | phase, | ||
| float | x, | ||
| float | y, | ||
| double | time ) |
Referenced by touchMoved().
|
inline |
Method for adapting user defined events
References getTime(), and userEvent().
Referenced by userEvent().
| GUIEventAdapter * osgGA::EventQueue::userEvent | ( | osg::Referenced * | userEventData, |
| double | time ) |
Method for adapting user defined events with specified event time
|
inline |
Method for adapting window resize event, placing this event on the back of the event queue.
References getTime(), and windowResize().
Referenced by windowResize().
| osgGA::GUIEventAdapter * 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.
|
protected |
Referenced by getCurrentEventState(), getCurrentEventState(), and setCurrentEventState().
|
mutableprotected |
Referenced by empty().
|
protected |
Referenced by getFirstTouchEmulatesMouse(), and setFirstTouchEmulatesMouse().
|
protected |
Referenced by getStartTick(), getTime(), and setStartTick().
|
protected |
Referenced by getUseFixedMouseInputRange(), and setUseFixedMouseInputRange().