OpenSceneGraph  3.5.1
Classes | Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
osgGA::GUIEventAdapter Class Reference

Event class for storing Keyboard, mouse and window events. More...

Inheritance diagram for osgGA::GUIEventAdapter:
Inheritance graph
[legend]

Classes

struct  Scrolling
 
struct  TabletPen
 
class  TouchData
 

Public Types

enum  MouseButtonMask { LEFT_MOUSE_BUTTON = 1<<0, MIDDLE_MOUSE_BUTTON = 1<<1, RIGHT_MOUSE_BUTTON = 1<<2 }
 
enum  EventType {
  NONE = 0, PUSH = 1<<0, RELEASE = 1<<1, DOUBLECLICK = 1<<2,
  DRAG = 1<<3, MOVE = 1<<4, KEYDOWN = 1<<5, KEYUP = 1<<6,
  FRAME = 1<<7, RESIZE = 1<<8, SCROLL = 1<<9, PEN_PRESSURE = 1<<10,
  PEN_ORIENTATION = 1<<11, PEN_PROXIMITY_ENTER = 1<<12, PEN_PROXIMITY_LEAVE = 1<<13, CLOSE_WINDOW = 1<<14,
  QUIT_APPLICATION = 1<<15, USER = 1<<16
}
 
enum  KeySymbol {
  KEY_Space = 0x20, KEY_0 = '0', KEY_1 = '1', KEY_2 = '2',
  KEY_3 = '3', KEY_4 = '4', KEY_5 = '5', KEY_6 = '6',
  KEY_7 = '7', KEY_8 = '8', KEY_9 = '9', KEY_A = 'a',
  KEY_B = 'b', KEY_C = 'c', KEY_D = 'd', KEY_E = 'e',
  KEY_F = 'f', KEY_G = 'g', KEY_H = 'h', KEY_I = 'i',
  KEY_J = 'j', KEY_K = 'k', KEY_L = 'l', KEY_M = 'm',
  KEY_N = 'n', KEY_O = 'o', KEY_P = 'p', KEY_Q = 'q',
  KEY_R = 'r', KEY_S = 's', KEY_T = 't', KEY_U = 'u',
  KEY_V = 'v', KEY_W = 'w', KEY_X = 'x', KEY_Y = 'y',
  KEY_Z = 'z', KEY_Exclaim = 0x21, KEY_Quotedbl = 0x22, KEY_Hash = 0x23,
  KEY_Dollar = 0x24, KEY_Ampersand = 0x26, KEY_Quote = 0x27, KEY_Leftparen = 0x28,
  KEY_Rightparen = 0x29, KEY_Asterisk = 0x2A, KEY_Plus = 0x2B, KEY_Comma = 0x2C,
  KEY_Minus = 0x2D, KEY_Period = 0x2E, KEY_Slash = 0x2F, KEY_Colon = 0x3A,
  KEY_Semicolon = 0x3B, KEY_Less = 0x3C, KEY_Equals = 0x3D, KEY_Greater = 0x3E,
  KEY_Question = 0x3F, KEY_At = 0x40, KEY_Leftbracket = 0x5B, KEY_Backslash = 0x5C,
  KEY_Rightbracket = 0x5D, KEY_Caret = 0x5E, KEY_Underscore = 0x5F, KEY_Backquote = 0x60,
  KEY_BackSpace = 0xFF08, KEY_Tab = 0xFF09, KEY_Linefeed = 0xFF0A, KEY_Clear = 0xFF0B,
  KEY_Return = 0xFF0D, KEY_Pause = 0xFF13, KEY_Scroll_Lock = 0xFF14, KEY_Sys_Req = 0xFF15,
  KEY_Escape = 0xFF1B, KEY_Delete = 0xFFFF, KEY_Home = 0xFF50, KEY_Left = 0xFF51,
  KEY_Up = 0xFF52, KEY_Right = 0xFF53, KEY_Down = 0xFF54, KEY_Prior = 0xFF55,
  KEY_Page_Up = 0xFF55, KEY_Next = 0xFF56, KEY_Page_Down = 0xFF56, KEY_End = 0xFF57,
  KEY_Begin = 0xFF58, KEY_Select = 0xFF60, KEY_Print = 0xFF61, KEY_Execute = 0xFF62,
  KEY_Insert = 0xFF63, KEY_Undo = 0xFF65, KEY_Redo = 0xFF66, KEY_Menu = 0xFF67,
  KEY_Find = 0xFF68, KEY_Cancel = 0xFF69, KEY_Help = 0xFF6A, KEY_Break = 0xFF6B,
  KEY_Mode_switch = 0xFF7E, KEY_Script_switch = 0xFF7E, KEY_Num_Lock = 0xFF7F, KEY_KP_Space = 0xFF80,
  KEY_KP_Tab = 0xFF89, KEY_KP_Enter = 0xFF8D, KEY_KP_F1 = 0xFF91, KEY_KP_F2 = 0xFF92,
  KEY_KP_F3 = 0xFF93, KEY_KP_F4 = 0xFF94, KEY_KP_Home = 0xFF95, KEY_KP_Left = 0xFF96,
  KEY_KP_Up = 0xFF97, KEY_KP_Right = 0xFF98, KEY_KP_Down = 0xFF99, KEY_KP_Prior = 0xFF9A,
  KEY_KP_Page_Up = 0xFF9A, KEY_KP_Next = 0xFF9B, KEY_KP_Page_Down = 0xFF9B, KEY_KP_End = 0xFF9C,
  KEY_KP_Begin = 0xFF9D, KEY_KP_Insert = 0xFF9E, KEY_KP_Delete = 0xFF9F, KEY_KP_Equal = 0xFFBD,
  KEY_KP_Multiply = 0xFFAA, KEY_KP_Add = 0xFFAB, KEY_KP_Separator = 0xFFAC, KEY_KP_Subtract = 0xFFAD,
  KEY_KP_Decimal = 0xFFAE, KEY_KP_Divide = 0xFFAF, KEY_KP_0 = 0xFFB0, KEY_KP_1 = 0xFFB1,
  KEY_KP_2 = 0xFFB2, KEY_KP_3 = 0xFFB3, KEY_KP_4 = 0xFFB4, KEY_KP_5 = 0xFFB5,
  KEY_KP_6 = 0xFFB6, KEY_KP_7 = 0xFFB7, KEY_KP_8 = 0xFFB8, KEY_KP_9 = 0xFFB9,
  KEY_F1 = 0xFFBE, KEY_F2 = 0xFFBF, KEY_F3 = 0xFFC0, KEY_F4 = 0xFFC1,
  KEY_F5 = 0xFFC2, KEY_F6 = 0xFFC3, KEY_F7 = 0xFFC4, KEY_F8 = 0xFFC5,
  KEY_F9 = 0xFFC6, KEY_F10 = 0xFFC7, KEY_F11 = 0xFFC8, KEY_F12 = 0xFFC9,
  KEY_F13 = 0xFFCA, KEY_F14 = 0xFFCB, KEY_F15 = 0xFFCC, KEY_F16 = 0xFFCD,
  KEY_F17 = 0xFFCE, KEY_F18 = 0xFFCF, KEY_F19 = 0xFFD0, KEY_F20 = 0xFFD1,
  KEY_F21 = 0xFFD2, KEY_F22 = 0xFFD3, KEY_F23 = 0xFFD4, KEY_F24 = 0xFFD5,
  KEY_F25 = 0xFFD6, KEY_F26 = 0xFFD7, KEY_F27 = 0xFFD8, KEY_F28 = 0xFFD9,
  KEY_F29 = 0xFFDA, KEY_F30 = 0xFFDB, KEY_F31 = 0xFFDC, KEY_F32 = 0xFFDD,
  KEY_F33 = 0xFFDE, KEY_F34 = 0xFFDF, KEY_F35 = 0xFFE0, KEY_Shift_L = 0xFFE1,
  KEY_Shift_R = 0xFFE2, KEY_Control_L = 0xFFE3, KEY_Control_R = 0xFFE4, KEY_Caps_Lock = 0xFFE5,
  KEY_Shift_Lock = 0xFFE6, KEY_Meta_L = 0xFFE7, KEY_Meta_R = 0xFFE8, KEY_Alt_L = 0xFFE9,
  KEY_Alt_R = 0xFFEA, KEY_Super_L = 0xFFEB, KEY_Super_R = 0xFFEC, KEY_Hyper_L = 0xFFED,
  KEY_Hyper_R = 0xFFEE
}
 
enum  ModKeyMask {
  MODKEY_LEFT_SHIFT = 0x0001, MODKEY_RIGHT_SHIFT = 0x0002, MODKEY_LEFT_CTRL = 0x0004, MODKEY_RIGHT_CTRL = 0x0008,
  MODKEY_LEFT_ALT = 0x0010, MODKEY_RIGHT_ALT = 0x0020, MODKEY_LEFT_META = 0x0040, MODKEY_RIGHT_META = 0x0080,
  MODKEY_LEFT_SUPER = 0x0100, MODKEY_RIGHT_SUPER = 0x0200, MODKEY_LEFT_HYPER = 0x0400, MODKEY_RIGHT_HYPER = 0x0800,
  MODKEY_NUM_LOCK = 0x1000, MODKEY_CAPS_LOCK = 0x2000, MODKEY_CTRL = (MODKEY_LEFT_CTRL|MODKEY_RIGHT_CTRL), MODKEY_SHIFT = (MODKEY_LEFT_SHIFT|MODKEY_RIGHT_SHIFT),
  MODKEY_ALT = (MODKEY_LEFT_ALT|MODKEY_RIGHT_ALT), MODKEY_META = (MODKEY_LEFT_META|MODKEY_RIGHT_META), MODKEY_SUPER = (MODKEY_LEFT_SUPER|MODKEY_RIGHT_SUPER), MODKEY_HYPER = (MODKEY_LEFT_HYPER|MODKEY_RIGHT_HYPER)
}
 
enum  MouseYOrientation { Y_INCREASING_UPWARDS, Y_INCREASING_DOWNWARDS }
 
enum  ScrollingMotion {
  SCROLL_NONE, SCROLL_LEFT, SCROLL_RIGHT, SCROLL_UP,
  SCROLL_DOWN, SCROLL_2D
}
 
enum  TabletPointerType { UNKNOWN = 0, PEN, PUCK, ERASER }
 
enum  TouchPhase {
  TOUCH_UNKNOWN, TOUCH_BEGAN, TOUCH_MOVED, TOUCH_STATIONERY,
  TOUCH_ENDED
}
 
typedef std::vector< osg::ref_ptr< PointerData > > PointerDataList
 
- Public Types inherited from osg::Object
enum  DataVariance { DYNAMIC, STATIC, UNSPECIFIED }
 

Public Member Functions

 GUIEventAdapter ()
 
 GUIEventAdapter (const GUIEventAdapter &rhs, const osg::CopyOp &copyop=osg::CopyOp::SHALLOW_COPY)
 
 META_Object (osgGA, GUIEventAdapter)
 
virtual GUIEventAdapterasGUIEventAdapter ()
 
virtual const GUIEventAdapterasGUIEventAdapter () const
 
void setEventType (EventType Type)
 set the event type. More...
 
virtual EventType getEventType () const
 get the event type. More...
 
double time () const
 deprecated function for getting time of event. More...
 
void setGraphicsContext (osg::GraphicsContext *context)
 
osg::GraphicsContextgetGraphicsContext ()
 
const osg::GraphicsContextgetGraphicsContext () const
 
void setWindowRectangle (int x, int y, int width, int height, bool updateMouseRange=true)
 set window rectangle. More...
 
void setWindowX (int v)
 set window x origin. More...
 
int getWindowX () const
 get window x origin. More...
 
void setWindowY (int v)
 set window x origin. More...
 
int getWindowY () const
 get window y origin. More...
 
void setWindowWidth (int v)
 set window width. More...
 
int getWindowWidth () const
 get window width. More...
 
void setWindowHeight (int v)
 set window height. More...
 
int getWindowHeight () const
 get window height. More...
 
void setKey (int key)
 set key pressed. More...
 
virtual int getKey () const
 get key pressed, return -1 if inappropriate for this GUIEventAdapter. More...
 
void setUnmodifiedKey (int key)
 set virtual key pressed. More...
 
int getUnmodifiedKey () const
 get virtual key pressed. More...
 
void setButton (int button)
 set button pressed/released. More...
 
int getButton () const
 button pressed/released, return -1 if inappropriate for this GUIEventAdapter. More...
 
void setInputRange (float Xmin, float Ymin, float Xmax, float Ymax)
 set mouse input range. More...
 
void setXmin (float v)
 set mouse minimum x. More...
 
float getXmin () const
 get mouse minimum x. More...
 
void setXmax (float v)
 set mouse maximum x. More...
 
float getXmax () const
 get mouse maximum x. More...
 
void setYmin (float v)
 set mouse minimum x. More...
 
float getYmin () const
 get mouse minimum y. More...
 
void setYmax (float v)
 set mouse maximum y. More...
 
float getYmax () const
 get mouse maximum y. More...
 
void setX (float x)
 set current mouse x position. More...
 
float getX () const
 get current mouse x position. More...
 
void setY (float y)
 set current mouse y position. More...
 
float getY () const
 get current mouse y position. More...
 
float getXnormalized () const
 
float getYnormalized () const
 
void setMouseYOrientation (MouseYOrientation myo)
 set mouse-Y orientation (mouse-Y increases upwards or downwards). More...
 
MouseYOrientation getMouseYOrientation () const
 get mouse-Y orientation (mouse-Y increases upwards or downwards). More...
 
void setMouseYOrientationAndUpdateCoords (MouseYOrientation myo)
 set mouse-Y orientation (mouse-Y increases upwards or downwards) and recompute variables More...
 
void setButtonMask (int mask)
 set current mouse button state. More...
 
int getButtonMask () const
 get current mouse button state. More...
 
void setModKeyMask (int mask)
 set modifier key mask. More...
 
int getModKeyMask () const
 get modifier key mask. More...
 
void setScrollingMotion (ScrollingMotion motion)
 set scrolling motion (for EventType::SCROLL). More...
 
ScrollingMotion getScrollingMotion () const
 get scrolling motion (for EventType::SCROLL). More...
 
void setScrollingMotionDelta (float x, float y)
 set the scrolling delta to x,y and the scrolling motion to SCROLL_2D. More...
 
void setScrollingDeltaX (float v)
 set the scrolling x-delta. More...
 
float getScrollingDeltaX () const
 get the scrolling x-delta. More...
 
void setScrollingDeltaY (float v)
 set the scrolling y-delta. More...
 
float getScrollingDeltaY () const
 get the scrolling y-delta. More...
 
void setPenPressure (float pressure)
 set the tablet pen pressure (range 0..1). More...
 
float getPenPressure () const
 get the tablet pen pressure (range 0..1). More...
 
void setPenTiltX (float tiltX)
 set the tablet pen tiltX in degrees. More...
 
float getPenTiltX () const
 get the tablet pen tiltX in degrees. More...
 
void setPenTiltY (float tiltY)
 set the tablet pen tiltY in degrees. More...
 
float getPenTiltY () const
 get the tablet pen tiltY in degrees. More...
 
void setPenRotation (float rotation)
 set the tablet pen rotation around the Z-axis in degrees. More...
 
float getPenRotation () const
 get the tablet pen rotation around the Z-axis in degrees. More...
 
void setTabletPointerType (TabletPointerType pt)
 set the tablet pointer type. More...
 
TabletPointerType getTabletPointerType () const
 get the tablet pointer type. More...
 
const osg::Matrix getPenOrientation () const
 set the orientation from a tablet input device as a matrix. More...
 
void addTouchPoint (unsigned int id, TouchPhase phase, float x, float y, unsigned int tapCount=0)
 
void setTouchData (TouchData *td)
 
TouchDatagetTouchData () const
 
bool isMultiTouchEvent () const
 
float getTouchPointNormalizedX (unsigned int ndx) const
 
float getTouchPointNormalizedY (unsigned int ndx) const
 
void setPointerDataList (const PointerDataList &pdl)
 
PointerDataListgetPointerDataList ()
 
const PointerDataListgetPointerDataList () const
 
unsigned int getNumPointerData () const
 
PointerDatagetPointerData (unsigned int i)
 
const PointerDatagetPointerData (unsigned int i) const
 
PointerDatagetPointerData (osg::Object *obj)
 
const PointerDatagetPointerData (osg::Object *obj) const
 
void addPointerData (PointerData *pd)
 
void copyPointerDataFrom (const osgGA::GUIEventAdapter &sourceEvent)
 
- Public Member Functions inherited from osgGA::Event
 Event ()
 
 Event (const Event &rhs, const osg::CopyOp &copyop=osg::CopyOp::SHALLOW_COPY)
 
 META_Object (osgGA, Event)
 
void setHandled (bool handled) const
 Set whether this event has been handled by an event handler or not. More...
 
bool getHandled () const
 Get whether this event has been handled by an event handler or not. More...
 
void setTime (double time)
 set time in seconds of event. More...
 
double getTime () const
 get time in seconds of event. More...
 
- Public Member Functions inherited from osg::Object
 Object ()
 Construct an object. More...
 
 Object (bool threadSafeRefUnref)
 
 Object (const Object &, const CopyOp &copyop=CopyOp::SHALLOW_COPY)
 Copy constructor, optional CopyOp object can be used to control shallow vs deep copying of dynamic data. More...
 
virtual ObjectcloneType () const =0
 Clone the type of an object, with Object* return type. More...
 
virtual Objectclone (const CopyOp &) const =0
 Clone an object, with Object* return type. More...
 
virtual bool isSameKindAs (const Object *) const
 
virtual const char * libraryName () const =0
 return the name of the object's library. More...
 
virtual const char * className () const =0
 return the name of the object's class type. More...
 
std::string getCompoundClassName () const
 return the compound class name that combines the library name and class name. More...
 
virtual NodeasNode ()
 Convert 'this' into a Node pointer if Object is a Node, otherwise return 0. More...
 
virtual const NodeasNode () const
 convert 'const this' into a const Node pointer if Object is a Node, otherwise return 0. More...
 
virtual NodeVisitorasNodeVisitor ()
 Convert 'this' into a NodeVisitor pointer if Object is a NodeVisitor, otherwise return 0. More...
 
virtual const NodeVisitorasNodeVisitor () const
 convert 'const this' into a const NodeVisitor pointer if Object is a NodeVisitor, otherwise return 0. More...
 
virtual StateAttributeasStateAttribute ()
 Convert 'this' into a StateAttribute pointer if Object is a StateAttribute, otherwise return 0. More...
 
virtual const StateAttributeasStateAttribute () const
 convert 'const this' into a const StateAttribute pointer if Object is a StateAttribute, otherwise return 0. More...
 
virtual UniformasUniform ()
 Convert 'this' into a Uniform pointer if Object is a Uniform, otherwise return 0. More...
 
virtual const UniformasUniform () const
 convert 'const this' into a const Uniform pointer if Object is a Uniform, otherwise return 0. More...
 
virtual void setThreadSafeRefUnref (bool threadSafe)
 Set whether to use a mutex to ensure ref() and unref() are thread safe. More...
 
virtual void setName (const std::string &name)
 Set the name of object using C++ style string. More...
 
void setName (const char *name)
 Set the name of object using a C style string. More...
 
const std::string & getName () const
 Get the name of object. More...
 
void setDataVariance (DataVariance dv)
 Set the data variance of this object. More...
 
DataVariance getDataVariance () const
 Get the data variance of this object. More...
 
virtual void computeDataVariance ()
 Compute the DataVariance based on an assessment of callback etc. More...
 
void setUserDataContainer (osg::UserDataContainer *udc)
 set the UserDataContainer object. More...
 
template<class T >
void setUserDataContainer (const ref_ptr< T > &udc)
 
osg::UserDataContainergetUserDataContainer ()
 get the UserDataContainer attached to this object. More...
 
const osg::UserDataContainergetUserDataContainer () const
 get the const UserDataContainer attached to this object. More...
 
osg::UserDataContainergetOrCreateUserDataContainer ()
 Convenience method that returns the UserDataContainer, and if one doesn't already exist creates and assigns a DefaultUserDataContainer to the Object and then return this new UserDataContainer. More...
 
virtual void setUserData (Referenced *obj)
 Set user data, data must be subclassed from Referenced to allow automatic memory handling. More...
 
template<class T >
void setUserData (const ref_ptr< T > &ud)
 
virtual ReferencedgetUserData ()
 Get user data. More...
 
virtual const ReferencedgetUserData () const
 Get const user data. More...
 
template<typename T >
bool getUserValue (const std::string &name, T &value) const
 Convenience method that casts the named UserObject to osg::TemplateValueObject<T> and gets the value. More...
 
template<typename T >
void setUserValue (const std::string &name, const T &value)
 Convenience method that creates the osg::TemplateValueObject<T> to store the specified value and adds it as a named UserObject. More...
 
virtual void resizeGLObjectBuffers (unsigned int)
 Resize any per context GLObject buffers to specified size. More...
 
virtual void releaseGLObjects (osg::State *=0) const
 If State is non-zero, this function releases any associated OpenGL objects for the specified graphics context. More...
 
template<typename T >
BoolValueObject UCharValueObject UShortValueObject UIntValueObject DoubleValueObject Vec3fValueObject Vec2dValueObject Vec4dValueObject PlaneValueObject MatrixdValueObject BoundingBoxdValueObject BoundingSpheredValueObject bool getUserValue (const std::string &name, T &value) const
 provide implementation of osg::Object::getUserValue(..) template More...
 
- Public Member Functions inherited from osg::Referenced
 Referenced ()
 
 Referenced (bool threadSafeRefUnref)
 
 Referenced (const Referenced &)
 
Referencedoperator= (const Referenced &)
 
bool getThreadSafeRefUnref () const
 Get whether a mutex is used to ensure ref() and unref() are thread safe. More...
 
OpenThreads::Mutex * getRefMutex () const
 Get the mutex used to ensure thread safety of ref()/unref(). More...
 
int ref () const
 Increment the reference count by one, indicating that this object has another pointer which is referencing it. More...
 
int unref () const
 Decrement the reference count by one, indicating that a pointer to this object is no longer referencing it. More...
 
int unref_nodelete () const
 Decrement the reference count by one, indicating that a pointer to this object is no longer referencing it. More...
 
int referenceCount () const
 Return the number of pointers currently referencing this object. More...
 
ObserverSetgetObserverSet () const
 Get the ObserverSet if one is attached, otherwise return NULL. More...
 
ObserverSetgetOrCreateObserverSet () const
 Get the ObserverSet if one is attached, otherwise create an ObserverSet, attach it, then return this newly created ObserverSet. More...
 
void addObserver (Observer *observer) const
 Add a Observer that is observing this object, notify the Observer when this object gets deleted. More...
 
void removeObserver (Observer *observer) const
 Remove Observer that is observing this object. More...
 

Static Public Member Functions

static osg::ref_ptr< GUIEventAdapter > & getAccumulatedEventState ()
 Get the accumulated event state singleton. More...
 
- Static Public Member Functions inherited from osg::Referenced
static OpenThreads::Mutex * getGlobalReferencedMutex ()
 Get the optional global Referenced mutex, this can be shared between all osg::Referenced. More...
 
static void setThreadSafeReferenceCounting (bool enableThreadSafeReferenceCounting)
 Set whether reference counting should use a mutex for thread safe reference counting. More...
 
static bool getThreadSafeReferenceCounting ()
 Get whether reference counting is active. More...
 
static void setDeleteHandler (DeleteHandler *handler)
 Set a DeleteHandler to which deletion of all referenced counted objects will be delegated. More...
 
static DeleteHandlergetDeleteHandler ()
 Get a DeleteHandler. More...
 

Protected Member Functions

virtual ~GUIEventAdapter ()
 Force users to create on heap, so that multiple referencing is safe. More...
 
- Protected Member Functions inherited from osgGA::Event
virtual ~Event ()
 
- Protected Member Functions inherited from osg::Object
virtual ~Object ()
 Object destructor. More...
 
- Protected Member Functions inherited from osg::Referenced
virtual ~Referenced ()
 
void signalObserversAndDelete (bool signalDelete, bool doDelete) const
 
void deleteUsingDeleteHandler () const
 

Protected Attributes

EventType _eventType
 
osg::observer_ptr< osg::GraphicsContext_context
 
int _windowX
 
int _windowY
 
int _windowWidth
 
int _windowHeight
 
int _key
 
int _unmodifiedKey
 
int _button
 
float _Xmin
 
float _Xmax
 
float _Ymin
 
float _Ymax
 
float _mx
 
float _my
 
int _buttonMask
 
int _modKeyMask
 
MouseYOrientation _mouseYOrientation
 
Scrolling _scrolling
 
TabletPen _tabletPen
 
osg::ref_ptr< TouchData_touchData
 
PointerDataList _pointerDataList
 
- Protected Attributes inherited from osgGA::Event
bool _handled
 
double _time
 
- Protected Attributes inherited from osg::Object
std::string _name
 
DataVariance _dataVariance
 
osg::UserDataContainer_userDataContainer
 
- Protected Attributes inherited from osg::Referenced
OpenThreads::AtomicPtr _observerSet
 
OpenThreads::Atomic _refCount
 

Detailed Description

Event class for storing Keyboard, mouse and window events.

Member Typedef Documentation

Member Enumeration Documentation

Enumerator
NONE 
PUSH 
RELEASE 
DOUBLECLICK 
DRAG 
MOVE 
KEYDOWN 
KEYUP 
FRAME 
RESIZE 
SCROLL 
PEN_PRESSURE 
PEN_ORIENTATION 
PEN_PROXIMITY_ENTER 
PEN_PROXIMITY_LEAVE 
CLOSE_WINDOW 
QUIT_APPLICATION 
USER 
Enumerator
KEY_Space 
KEY_0 
KEY_1 
KEY_2 
KEY_3 
KEY_4 
KEY_5 
KEY_6 
KEY_7 
KEY_8 
KEY_9 
KEY_A 
KEY_B 
KEY_C 
KEY_D 
KEY_E 
KEY_F 
KEY_G 
KEY_H 
KEY_I 
KEY_J 
KEY_K 
KEY_L 
KEY_M 
KEY_N 
KEY_O 
KEY_P 
KEY_Q 
KEY_R 
KEY_S 
KEY_T 
KEY_U 
KEY_V 
KEY_W 
KEY_X 
KEY_Y 
KEY_Z 
KEY_Exclaim 
KEY_Quotedbl 
KEY_Hash 
KEY_Dollar 
KEY_Ampersand 
KEY_Quote 
KEY_Leftparen 
KEY_Rightparen 
KEY_Asterisk 
KEY_Plus 
KEY_Comma 
KEY_Minus 
KEY_Period 
KEY_Slash 
KEY_Colon 
KEY_Semicolon 
KEY_Less 
KEY_Equals 
KEY_Greater 
KEY_Question 
KEY_At 
KEY_Leftbracket 
KEY_Backslash 
KEY_Rightbracket 
KEY_Caret 
KEY_Underscore 
KEY_Backquote 
KEY_BackSpace 
KEY_Tab 
KEY_Linefeed 
KEY_Clear 
KEY_Return 
KEY_Pause 
KEY_Scroll_Lock 
KEY_Sys_Req 
KEY_Escape 
KEY_Delete 
KEY_Home 
KEY_Left 
KEY_Up 
KEY_Right 
KEY_Down 
KEY_Prior 
KEY_Page_Up 
KEY_Next 
KEY_Page_Down 
KEY_End 
KEY_Begin 
KEY_Select 
KEY_Print 
KEY_Execute 
KEY_Insert 
KEY_Undo 
KEY_Redo 
KEY_Menu 
KEY_Find 
KEY_Cancel 
KEY_Help 
KEY_Break 
KEY_Mode_switch 
KEY_Script_switch 
KEY_Num_Lock 
KEY_KP_Space 
KEY_KP_Tab 
KEY_KP_Enter 
KEY_KP_F1 
KEY_KP_F2 
KEY_KP_F3 
KEY_KP_F4 
KEY_KP_Home 
KEY_KP_Left 
KEY_KP_Up 
KEY_KP_Right 
KEY_KP_Down 
KEY_KP_Prior 
KEY_KP_Page_Up 
KEY_KP_Next 
KEY_KP_Page_Down 
KEY_KP_End 
KEY_KP_Begin 
KEY_KP_Insert 
KEY_KP_Delete 
KEY_KP_Equal 
KEY_KP_Multiply 
KEY_KP_Add 
KEY_KP_Separator 
KEY_KP_Subtract 
KEY_KP_Decimal 
KEY_KP_Divide 
KEY_KP_0 
KEY_KP_1 
KEY_KP_2 
KEY_KP_3 
KEY_KP_4 
KEY_KP_5 
KEY_KP_6 
KEY_KP_7 
KEY_KP_8 
KEY_KP_9 
KEY_F1 
KEY_F2 
KEY_F3 
KEY_F4 
KEY_F5 
KEY_F6 
KEY_F7 
KEY_F8 
KEY_F9 
KEY_F10 
KEY_F11 
KEY_F12 
KEY_F13 
KEY_F14 
KEY_F15 
KEY_F16 
KEY_F17 
KEY_F18 
KEY_F19 
KEY_F20 
KEY_F21 
KEY_F22 
KEY_F23 
KEY_F24 
KEY_F25 
KEY_F26 
KEY_F27 
KEY_F28 
KEY_F29 
KEY_F30 
KEY_F31 
KEY_F32 
KEY_F33 
KEY_F34 
KEY_F35 
KEY_Shift_L 
KEY_Shift_R 
KEY_Control_L 
KEY_Control_R 
KEY_Caps_Lock 
KEY_Shift_Lock 
KEY_Meta_L 
KEY_Meta_R 
KEY_Alt_L 
KEY_Alt_R 
KEY_Super_L 
KEY_Super_R 
KEY_Hyper_L 
KEY_Hyper_R 
Enumerator
MODKEY_LEFT_SHIFT 
MODKEY_RIGHT_SHIFT 
MODKEY_LEFT_CTRL 
MODKEY_RIGHT_CTRL 
MODKEY_LEFT_ALT 
MODKEY_RIGHT_ALT 
MODKEY_LEFT_META 
MODKEY_RIGHT_META 
MODKEY_LEFT_SUPER 
MODKEY_RIGHT_SUPER 
MODKEY_LEFT_HYPER 
MODKEY_RIGHT_HYPER 
MODKEY_NUM_LOCK 
MODKEY_CAPS_LOCK 
MODKEY_CTRL 
MODKEY_SHIFT 
MODKEY_ALT 
MODKEY_META 
MODKEY_SUPER 
MODKEY_HYPER 
Enumerator
LEFT_MOUSE_BUTTON 
MIDDLE_MOUSE_BUTTON 
RIGHT_MOUSE_BUTTON 
Enumerator
Y_INCREASING_UPWARDS 
Y_INCREASING_DOWNWARDS 
Enumerator
SCROLL_NONE 
SCROLL_LEFT 
SCROLL_RIGHT 
SCROLL_UP 
SCROLL_DOWN 
SCROLL_2D 
Enumerator
UNKNOWN 
PEN 
PUCK 
ERASER 
Enumerator
TOUCH_UNKNOWN 
TOUCH_BEGAN 
TOUCH_MOVED 
TOUCH_STATIONERY 
TOUCH_ENDED 

Constructor & Destructor Documentation

osgGA::GUIEventAdapter::GUIEventAdapter ( )
osgGA::GUIEventAdapter::GUIEventAdapter ( const GUIEventAdapter rhs,
const osg::CopyOp copyop = osg::CopyOp::SHALLOW_COPY 
)
virtual osgGA::GUIEventAdapter::~GUIEventAdapter ( )
protectedvirtual

Force users to create on heap, so that multiple referencing is safe.

Member Function Documentation

void osgGA::GUIEventAdapter::addPointerData ( PointerData pd)
inline
void osgGA::GUIEventAdapter::addTouchPoint ( unsigned int  id,
TouchPhase  phase,
float  x,
float  y,
unsigned int  tapCount = 0 
)
virtual GUIEventAdapter* osgGA::GUIEventAdapter::asGUIEventAdapter ( )
inlinevirtual

Reimplemented from osgGA::Event.

virtual const GUIEventAdapter* osgGA::GUIEventAdapter::asGUIEventAdapter ( ) const
inlinevirtual

Reimplemented from osgGA::Event.

void osgGA::GUIEventAdapter::copyPointerDataFrom ( const osgGA::GUIEventAdapter sourceEvent)
static osg::ref_ptr<GUIEventAdapter>& osgGA::GUIEventAdapter::getAccumulatedEventState ( )
static

Get the accumulated event state singleton.

Typically all EventQueue will share this single GUIEventAdapter object for tracking the mouse position, keyboard and mouse masks.

int osgGA::GUIEventAdapter::getButton ( ) const
inline

button pressed/released, return -1 if inappropriate for this GUIEventAdapter.

int osgGA::GUIEventAdapter::getButtonMask ( ) const
inline

get current mouse button state.

virtual EventType osgGA::GUIEventAdapter::getEventType ( ) const
inlinevirtual

get the event type.

osg::GraphicsContext* osgGA::GUIEventAdapter::getGraphicsContext ( )
inline
const osg::GraphicsContext* osgGA::GUIEventAdapter::getGraphicsContext ( ) const
inline
virtual int osgGA::GUIEventAdapter::getKey ( ) const
inlinevirtual

get key pressed, return -1 if inappropriate for this GUIEventAdapter.

int osgGA::GUIEventAdapter::getModKeyMask ( ) const
inline

get modifier key mask.

MouseYOrientation osgGA::GUIEventAdapter::getMouseYOrientation ( ) const
inline

get mouse-Y orientation (mouse-Y increases upwards or downwards).

unsigned int osgGA::GUIEventAdapter::getNumPointerData ( ) const
inline
const osg::Matrix osgGA::GUIEventAdapter::getPenOrientation ( ) const

set the orientation from a tablet input device as a matrix.

float osgGA::GUIEventAdapter::getPenPressure ( ) const
inline

get the tablet pen pressure (range 0..1).

float osgGA::GUIEventAdapter::getPenRotation ( ) const
inline

get the tablet pen rotation around the Z-axis in degrees.

float osgGA::GUIEventAdapter::getPenTiltX ( ) const
inline

get the tablet pen tiltX in degrees.

float osgGA::GUIEventAdapter::getPenTiltY ( ) const
inline

get the tablet pen tiltY in degrees.

PointerData* osgGA::GUIEventAdapter::getPointerData ( unsigned int  i)
inline
const PointerData* osgGA::GUIEventAdapter::getPointerData ( unsigned int  i) const
inline
PointerData* osgGA::GUIEventAdapter::getPointerData ( osg::Object obj)
inline
const PointerData* osgGA::GUIEventAdapter::getPointerData ( osg::Object obj) const
inline
PointerDataList& osgGA::GUIEventAdapter::getPointerDataList ( )
inline
const PointerDataList& osgGA::GUIEventAdapter::getPointerDataList ( ) const
inline
float osgGA::GUIEventAdapter::getScrollingDeltaX ( ) const
inline

get the scrolling x-delta.

float osgGA::GUIEventAdapter::getScrollingDeltaY ( ) const
inline

get the scrolling y-delta.

ScrollingMotion osgGA::GUIEventAdapter::getScrollingMotion ( ) const
inline

get scrolling motion (for EventType::SCROLL).

TabletPointerType osgGA::GUIEventAdapter::getTabletPointerType ( ) const
inline

get the tablet pointer type.

TouchData* osgGA::GUIEventAdapter::getTouchData ( ) const
inline
float osgGA::GUIEventAdapter::getTouchPointNormalizedX ( unsigned int  ndx) const
inline
float osgGA::GUIEventAdapter::getTouchPointNormalizedY ( unsigned int  ndx) const
inline
int osgGA::GUIEventAdapter::getUnmodifiedKey ( ) const
inline

get virtual key pressed.

int osgGA::GUIEventAdapter::getWindowHeight ( ) const
inline

get window height.

int osgGA::GUIEventAdapter::getWindowWidth ( ) const
inline

get window width.

int osgGA::GUIEventAdapter::getWindowX ( ) const
inline

get window x origin.

int osgGA::GUIEventAdapter::getWindowY ( ) const
inline

get window y origin.

float osgGA::GUIEventAdapter::getX ( ) const
inline

get current mouse x position.

float osgGA::GUIEventAdapter::getXmax ( ) const
inline

get mouse maximum x.

float osgGA::GUIEventAdapter::getXmin ( ) const
inline

get mouse minimum x.

float osgGA::GUIEventAdapter::getXnormalized ( ) const
inline
float osgGA::GUIEventAdapter::getY ( ) const
inline

get current mouse y position.

float osgGA::GUIEventAdapter::getYmax ( ) const
inline

get mouse maximum y.

float osgGA::GUIEventAdapter::getYmin ( ) const
inline

get mouse minimum y.

float osgGA::GUIEventAdapter::getYnormalized ( ) const
inline
bool osgGA::GUIEventAdapter::isMultiTouchEvent ( ) const
inline
osgGA::GUIEventAdapter::META_Object ( osgGA  ,
GUIEventAdapter   
)
void osgGA::GUIEventAdapter::setButton ( int  button)
inline

set button pressed/released.

void osgGA::GUIEventAdapter::setButtonMask ( int  mask)
inline

set current mouse button state.

void osgGA::GUIEventAdapter::setEventType ( EventType  Type)
inline

set the event type.

void osgGA::GUIEventAdapter::setGraphicsContext ( osg::GraphicsContext context)
inline
void osgGA::GUIEventAdapter::setInputRange ( float  Xmin,
float  Ymin,
float  Xmax,
float  Ymax 
)

set mouse input range.

void osgGA::GUIEventAdapter::setKey ( int  key)
inline

set key pressed.

void osgGA::GUIEventAdapter::setModKeyMask ( int  mask)
inline

set modifier key mask.

void osgGA::GUIEventAdapter::setMouseYOrientation ( MouseYOrientation  myo)
inline

set mouse-Y orientation (mouse-Y increases upwards or downwards).

void osgGA::GUIEventAdapter::setMouseYOrientationAndUpdateCoords ( MouseYOrientation  myo)

set mouse-Y orientation (mouse-Y increases upwards or downwards) and recompute variables

void osgGA::GUIEventAdapter::setPenPressure ( float  pressure)
inline

set the tablet pen pressure (range 0..1).

void osgGA::GUIEventAdapter::setPenRotation ( float  rotation)
inline

set the tablet pen rotation around the Z-axis in degrees.

void osgGA::GUIEventAdapter::setPenTiltX ( float  tiltX)
inline

set the tablet pen tiltX in degrees.

void osgGA::GUIEventAdapter::setPenTiltY ( float  tiltY)
inline

set the tablet pen tiltY in degrees.

void osgGA::GUIEventAdapter::setPointerDataList ( const PointerDataList pdl)
inline
void osgGA::GUIEventAdapter::setScrollingDeltaX ( float  v)
inline

set the scrolling x-delta.

void osgGA::GUIEventAdapter::setScrollingDeltaY ( float  v)
inline

set the scrolling y-delta.

void osgGA::GUIEventAdapter::setScrollingMotion ( ScrollingMotion  motion)
inline

set scrolling motion (for EventType::SCROLL).

void osgGA::GUIEventAdapter::setScrollingMotionDelta ( float  x,
float  y 
)
inline

set the scrolling delta to x,y and the scrolling motion to SCROLL_2D.

void osgGA::GUIEventAdapter::setTabletPointerType ( TabletPointerType  pt)
inline

set the tablet pointer type.

void osgGA::GUIEventAdapter::setTouchData ( TouchData td)
inline
void osgGA::GUIEventAdapter::setUnmodifiedKey ( int  key)
inline

set virtual key pressed.

void osgGA::GUIEventAdapter::setWindowHeight ( int  v)
inline

set window height.

void osgGA::GUIEventAdapter::setWindowRectangle ( int  x,
int  y,
int  width,
int  height,
bool  updateMouseRange = true 
)

set window rectangle.

void osgGA::GUIEventAdapter::setWindowWidth ( int  v)
inline

set window width.

void osgGA::GUIEventAdapter::setWindowX ( int  v)
inline

set window x origin.

void osgGA::GUIEventAdapter::setWindowY ( int  v)
inline

set window x origin.

void osgGA::GUIEventAdapter::setX ( float  x)
inline

set current mouse x position.

void osgGA::GUIEventAdapter::setXmax ( float  v)
inline

set mouse maximum x.

void osgGA::GUIEventAdapter::setXmin ( float  v)
inline

set mouse minimum x.

void osgGA::GUIEventAdapter::setY ( float  y)
inline

set current mouse y position.

void osgGA::GUIEventAdapter::setYmax ( float  v)
inline

set mouse maximum y.

void osgGA::GUIEventAdapter::setYmin ( float  v)
inline

set mouse minimum x.

double osgGA::GUIEventAdapter::time ( ) const
inline

deprecated function for getting time of event.

Member Data Documentation

int osgGA::GUIEventAdapter::_button
protected
int osgGA::GUIEventAdapter::_buttonMask
protected
osg::observer_ptr<osg::GraphicsContext> osgGA::GUIEventAdapter::_context
protected
EventType osgGA::GUIEventAdapter::_eventType
protected
int osgGA::GUIEventAdapter::_key
protected
int osgGA::GUIEventAdapter::_modKeyMask
protected
MouseYOrientation osgGA::GUIEventAdapter::_mouseYOrientation
protected
float osgGA::GUIEventAdapter::_mx
protected
float osgGA::GUIEventAdapter::_my
protected
PointerDataList osgGA::GUIEventAdapter::_pointerDataList
protected
Scrolling osgGA::GUIEventAdapter::_scrolling
protected
TabletPen osgGA::GUIEventAdapter::_tabletPen
protected
osg::ref_ptr<TouchData> osgGA::GUIEventAdapter::_touchData
protected
int osgGA::GUIEventAdapter::_unmodifiedKey
protected
int osgGA::GUIEventAdapter::_windowHeight
protected
int osgGA::GUIEventAdapter::_windowWidth
protected
int osgGA::GUIEventAdapter::_windowX
protected
int osgGA::GUIEventAdapter::_windowY
protected
float osgGA::GUIEventAdapter::_Xmax
protected
float osgGA::GUIEventAdapter::_Xmin
protected
float osgGA::GUIEventAdapter::_Ymax
protected
float osgGA::GUIEventAdapter::_Ymin
protected

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

osg logo
Generated at Wed Nov 11 2015 22:14:58 for the OpenSceneGraph by doxygen 1.8.10.