openscenegraph
osgViewer::GraphicsWindowX11 Class Reference

#include <GraphicsWindowX11>

Inheritance diagram for osgViewer::GraphicsWindowX11:
osgViewer::GraphicsWindow osgViewer::GraphicsHandleX11 osg::GraphicsContext osgGA::GUIActionAdapter osg::Object osg::Referenced

Classes

struct  WindowData

Public Member Functions

 GraphicsWindowX11 (osg::GraphicsContext::Traits *traits)
virtual bool isSameKindAs (const Object *object) const
virtual const char * libraryName () const
virtual const char * className () const
virtual bool valid () const
virtual bool realizeImplementation ()
virtual bool isRealizedImplementation () const
virtual void closeImplementation ()
virtual bool makeCurrentImplementation ()
virtual bool releaseContextImplementation ()
virtual void swapBuffersImplementation ()
virtual bool checkEvents ()
virtual bool setWindowDecorationImplementation (bool flag)
virtual void grabFocus ()
virtual void grabFocusIfPointerInWindow ()
virtual void raiseWindow ()
virtual void requestWarpPointer (float x, float y)
virtual bool setWindowRectangleImplementation (int x, int y, int width, int height)
virtual void setWindowName (const std::string &name)
virtual void setCursor (MouseCursor cursor)
Display * getEventDisplay () const
Display * getDisplayToUse () const
Window & getParent ()
Window & getWindow ()
Cursor getCurrentCursor ()
Public Member Functions inherited from osgViewer::GraphicsWindow
 GraphicsWindow ()
void setEventQueue (osgGA::EventQueue *eventQueue)
osgGA::EventQueuegetEventQueue ()
const osgGA::EventQueuegetEventQueue () const
void setWindowRectangle (int x, int y, int width, int height)
virtual void getWindowRectangle (int &x, int &y, int &width, int &height)
void setWindowDecoration (bool flag)
virtual bool getWindowDecoration () const
virtual std::string getWindowName ()
virtual void useCursor (bool cursorOn)
virtual void setSyncToVBlank (bool on)
bool getSyncToVBlank () const
virtual void setSwapGroup (bool on, GLuint group, GLuint barrier)
void getSwapGroup (bool &on, GLuint &group, GLuint &barrier) const
virtual bool makeContextCurrentImplementation (GraphicsContext *)
virtual void bindPBufferToTextureImplementation (GLenum)
void getViews (Views &views)
virtual void requestRedraw ()
virtual void requestContinuousUpdate (bool=true)
Public Member Functions inherited from osg::GraphicsContext
void add (Operation *operation)
void remove (Operation *operation)
void remove (const std::string &name)
void removeAllOperations ()
virtual void runOperations ()
GraphicsOperationQueuegetOperationsQueue ()
OpenThreads::MutexgetOperationsMutex ()
osg::RefBlockgetOperationsBlock ()
OperationgetCurrentOperation ()
const TraitsgetTraits () const
void setState (State *state)
StategetState ()
const StategetState () const
void setClearColor (const Vec4 &color)
const Vec4getClearColor () const
void setClearMask (GLbitfield mask)
GLbitfield getClearMask () const
virtual void clear ()
double getTimeSinceLastClear () const
bool realize ()
void close (bool callCloseImplementation=true)
void swapBuffers ()
bool isRealized () const
bool makeCurrent ()
bool makeContextCurrent (GraphicsContext *readContext)
bool releaseContext ()
bool isCurrent () const
void bindPBufferToTexture (GLenum buffer)
void createGraphicsThread ()
void setGraphicsThread (GraphicsThread *gt)
GraphicsThreadgetGraphicsThread ()
const GraphicsThreadgetGraphicsThread () const
virtual bool makeContextCurrentImplementation (GraphicsContext *readContext)=0
void setSwapCallback (SwapCallback *rc)
SwapCallbackgetSwapCallback ()
const SwapCallbackgetSwapCallback () const
void swapBuffersCallbackOrImplementation ()
void resized (int x, int y, int width, int height)
void setResizedCallback (ResizedCallback *rc)
ResizedCallbackgetResizedCallback ()
const ResizedCallbackgetResizedCallback () const
virtual void resizedImplementation (int x, int y, int width, int height)
CamerasgetCameras ()
const CamerasgetCameras () const
void setDefaultFboId (GLuint i)
GLuint getDefaultFboId () const
virtual bool isSameKindAs (const Object *object) const
Public Member Functions inherited from osg::Object
 Object ()
 Object (bool threadSafeRefUnref)
 Object (const Object &, const CopyOp &copyop=CopyOp::SHALLOW_COPY)
std::string getCompoundClassName () const
virtual NodeasNode ()
virtual const NodeasNode () const
virtual NodeVisitorasNodeVisitor ()
virtual const NodeVisitorasNodeVisitor () const
virtual StateSetasStateSet ()
virtual const StateSetasStateSet () const
virtual StateAttributeasStateAttribute ()
virtual const StateAttributeasStateAttribute () const
virtual UniformasUniform ()
virtual const UniformasUniform () const
virtual CameraasCamera ()
virtual const CameraasCamera () const
virtual DrawableasDrawable ()
virtual const DrawableasDrawable () const
virtual CallbackasCallback ()
virtual const CallbackasCallback () const
virtual CallbackObjectasCallbackObject ()
virtual const CallbackObjectasCallbackObject () const
virtual UserDataContainerasUserDataContainer ()
virtual const UserDataContainerasUserDataContainer () const
virtual ValueObjectasValueObject ()
virtual const ValueObjectasValueObject () const
virtual ImageasImage ()
virtual const ImageasImage () const
virtual void setThreadSafeRefUnref (bool threadSafe)
virtual void setName (const std::string &name)
void setName (const char *name)
const std::string & getName () const
void setDataVariance (DataVariance dv)
DataVariance getDataVariance () const
virtual void computeDataVariance ()
void setUserDataContainer (osg::UserDataContainer *udc)
template<class T>
void setUserDataContainer (const ref_ptr< T > &udc)
osg::UserDataContainergetUserDataContainer ()
const osg::UserDataContainergetUserDataContainer () const
osg::UserDataContainergetOrCreateUserDataContainer ()
virtual void setUserData (Referenced *obj)
template<class T>
void setUserData (const ref_ptr< T > &ud)
virtual ReferencedgetUserData ()
virtual const ReferencedgetUserData () const
template<typename T>
bool getUserValue (const std::string &name, T &value) const
template<typename T>
void setUserValue (const std::string &name, const T &value)
virtual void resizeGLObjectBuffers (unsigned int)
virtual void releaseGLObjects (osg::State *=0) const
template<typename T>
BoolValueObject UCharValueObject UShortValueObject UIntValueObject DoubleValueObject Vec3fValueObject Vec2dValueObject Vec4dValueObject PlaneValueObject MatrixdValueObject BoundingBoxdValueObject BoundingSpheredValueObject bool getUserValue (const std::string &name, T &value) const
Public Member Functions inherited from osg::Referenced
 Referenced ()
 Referenced (bool threadSafeRefUnref)
 Referenced (const Referenced &)
Referencedoperator= (const Referenced &)
bool getThreadSafeRefUnref () const
OpenThreads::MutexgetRefMutex () const
int ref () const
int unref () const
int unref_nodelete () const
int referenceCount () const
ObserverSetgetObserverSet () const
ObserverSetgetOrCreateObserverSet () const
void addObserver (Observer *observer) const
void removeObserver (Observer *observer) const
Public Member Functions inherited from osgGA::GUIActionAdapter
virtual ~GUIActionAdapter ()
virtual osg::ViewasView ()
virtual bool computeIntersections (const osgGA::GUIEventAdapter &, osgUtil::LineSegmentIntersector::Intersections &, osg::Node::NodeMask=0xffffffff)
virtual bool computeIntersections (const osgGA::GUIEventAdapter &, const osg::NodePath &, osgUtil::LineSegmentIntersector::Intersections &, osg::Node::NodeMask=0xffffffff)
Public Member Functions inherited from osgViewer::GraphicsHandleX11
 GraphicsHandleX11 ()
void setDisplay (Display *display)
Display * getDisplay () const
void setContext (Context context)
Context getContext () const

Protected Member Functions

 ~GraphicsWindowX11 ()
Cursor getOrCreateCursor (MouseCursor mouseShape)
bool createVisualInfo ()
bool createWindow ()
bool setWindow (Window window)
void init ()
bool checkAndSendEventFullScreenIfNeeded (Display *display, int x, int y, int width, int height, bool windowDecoration)
void transformMouseXY (float &x, float &y)
void adaptKey (XKeyEvent &keyevent, int &keySymbol, int &unmodifiedKeySymbol)
void forceKey (int key, double time, bool state)
void rescanModifierMapping ()
void getModifierMap (char *keymap) const
int getModifierMask () const
void syncLocks ()
void flushKeyEvents ()
Protected Member Functions inherited from osg::GraphicsContext
 GraphicsContext ()
 GraphicsContext (const GraphicsContext &, const osg::CopyOp &)
virtual ~GraphicsContext ()
virtual ObjectcloneType () const
virtual Objectclone (const CopyOp &) const
void addCamera (osg::Camera *camera)
void removeCamera (osg::Camera *camera)
Protected Member Functions inherited from osg::Object
virtual ~Object ()
Protected Member Functions inherited from osg::Referenced
virtual ~Referenced ()
void signalObserversAndDelete (bool signalDelete, bool doDelete) const
void deleteUsingDeleteHandler () const

Protected Attributes

bool _valid
Display * _eventDisplay
Window _parent
Window _window
XVisualInfo * _visualInfo
GLXFBConfig _fbConfig
Cursor _currentCursor
Atom _deleteWindow
bool _initialized
bool _realized
bool _ownsWindow
double _timeOfLastCheckEvents
int _lastEventType
int _modifierState
int _numLockMask
char _keyMap [32]
std::map< MouseCursor, Cursor > _mouseCursorMap
Protected Attributes inherited from osgViewer::GraphicsWindow
osg::ref_ptr< osgGA::EventQueue_eventQueue
Protected Attributes inherited from osg::GraphicsContext
Cameras _cameras
ref_ptr< Traits_traits
ref_ptr< State_state
Vec4 _clearColor
GLbitfield _clearMask
size_t _threadOfLastMakeCurrent
OpenThreads::Mutex _operationsMutex
osg::ref_ptr< osg::RefBlock_operationsBlock
GraphicsOperationQueue _operations
osg::ref_ptr< Operation_currentOperation
ref_ptr< GraphicsThread_graphicsThread
ref_ptr< ResizedCallback_resizedCallback
ref_ptr< SwapCallback_swapCallback
Timer_t _lastClearTick
GLuint _defaultFboId
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
Protected Attributes inherited from osgViewer::GraphicsHandleX11
Display * _display
Context _context

Additional Inherited Members

Public Types inherited from osgViewer::GraphicsWindow
enum  MouseCursor {
  InheritCursor , NoCursor , RightArrowCursor , LeftArrowCursor ,
  InfoCursor , DestroyCursor , HelpCursor , CycleCursor ,
  SprayCursor , WaitCursor , TextCursor , CrosshairCursor ,
  HandCursor , UpDownCursor , LeftRightCursor , TopSideCursor ,
  BottomSideCursor , LeftSideCursor , RightSideCursor , TopLeftCorner ,
  TopRightCorner , BottomRightCorner , BottomLeftCorner
}
typedef std::list< osgViewer::View * > Views
Public Types inherited from osg::GraphicsContext
typedef std::vector< ScreenSettingsScreenSettingsList
typedef std::vector< GraphicsContext * > GraphicsContexts
typedef std::list< ref_ptr< Operation > > GraphicsOperationQueue
typedef std::list< osg::Camera * > Cameras
Public Types inherited from osg::Object
enum  DataVariance { DYNAMIC , STATIC , UNSPECIFIED }
Public Types inherited from osgViewer::GraphicsHandleX11
typedef GLXContext Context
typedef GLXPbuffer Pbuffer
Static Public Member Functions inherited from osg::GraphicsContext
static osg::ref_ptr< WindowingSystemInterfaces > & getWindowingSystemInterfaces ()
static WindowingSystemInterfacegetWindowingSystemInterface (const std::string &name="")
static GraphicsContextcreateGraphicsContext (Traits *traits)
static unsigned int createNewContextID ()
static unsigned int getMaxContextID ()
static void incrementContextIDUsageCount (unsigned int contextID)
static void decrementContextIDUsageCount (unsigned int contextID)
static GraphicsContexts getAllRegisteredGraphicsContexts ()
static GraphicsContexts getRegisteredGraphicsContexts (unsigned int contextID)
static void setCompileContext (unsigned int contextID, GraphicsContext *gc)
static GraphicsContextgetOrCreateCompileContext (unsigned int contextID)
static GraphicsContextgetCompileContext (unsigned int contextID)
Static Public Member Functions inherited from osg::Referenced
static OpenThreads::MutexgetGlobalReferencedMutex ()
static void setDeleteHandler (DeleteHandler *handler)
static DeleteHandlergetDeleteHandler ()
Static Protected Member Functions inherited from osg::GraphicsContext
static void registerGraphicsContext (GraphicsContext *gc)
static void unregisterGraphicsContext (GraphicsContext *gc)

Constructor & Destructor Documentation

◆ GraphicsWindowX11()

◆ ~GraphicsWindowX11()

osgViewer::GraphicsWindowX11::~GraphicsWindowX11 ( )
protected

Member Function Documentation

◆ adaptKey()

void osgViewer::GraphicsWindowX11::adaptKey ( XKeyEvent & keyevent,
int & keySymbol,
int & unmodifiedKeySymbol )
protected

◆ checkAndSendEventFullScreenIfNeeded()

bool osgViewer::GraphicsWindowX11::checkAndSendEventFullScreenIfNeeded ( Display * display,
int x,
int y,
int width,
int height,
bool windowDecoration )
protected

◆ checkEvents()

virtual bool osgViewer::GraphicsWindowX11::checkEvents ( )
virtual

Check to see if any events have been generated.

Reimplemented from osgViewer::GraphicsWindow.

◆ className()

virtual const char * osgViewer::GraphicsWindowX11::className ( ) const
inlinevirtual

return the name of the object's class type. Must be defined by derived classes.

Reimplemented from osgViewer::GraphicsWindow.

◆ closeImplementation()

virtual void osgViewer::GraphicsWindowX11::closeImplementation ( )
virtual

Close the graphics context.

Reimplemented from osgViewer::GraphicsWindow.

◆ createVisualInfo()

bool osgViewer::GraphicsWindowX11::createVisualInfo ( )
protected

◆ createWindow()

bool osgViewer::GraphicsWindowX11::createWindow ( )
protected

◆ flushKeyEvents()

void osgViewer::GraphicsWindowX11::flushKeyEvents ( )
protected

◆ forceKey()

void osgViewer::GraphicsWindowX11::forceKey ( int key,
double time,
bool state )
protected

◆ getCurrentCursor()

Cursor osgViewer::GraphicsWindowX11::getCurrentCursor ( )
inline

References _currentCursor.

◆ getDisplayToUse()

Display * osgViewer::GraphicsWindowX11::getDisplayToUse ( ) const

◆ getEventDisplay()

Display * osgViewer::GraphicsWindowX11::getEventDisplay ( ) const
inline

References _eventDisplay.

◆ getModifierMap()

void osgViewer::GraphicsWindowX11::getModifierMap ( char * keymap) const
protected

◆ getModifierMask()

int osgViewer::GraphicsWindowX11::getModifierMask ( ) const
protected

◆ getOrCreateCursor()

Cursor osgViewer::GraphicsWindowX11::getOrCreateCursor ( MouseCursor mouseShape)
protected

◆ getParent()

Window & osgViewer::GraphicsWindowX11::getParent ( )
inline

References _parent.

◆ getWindow()

Window & osgViewer::GraphicsWindowX11::getWindow ( )
inline

References _window.

◆ grabFocus()

virtual void osgViewer::GraphicsWindowX11::grabFocus ( )
virtual

Get focus.

Reimplemented from osgViewer::GraphicsWindow.

◆ grabFocusIfPointerInWindow()

virtual void osgViewer::GraphicsWindowX11::grabFocusIfPointerInWindow ( )
virtual

Get focus on if the pointer is in this window.

Reimplemented from osgViewer::GraphicsWindow.

◆ init()

void osgViewer::GraphicsWindowX11::init ( )
protected

Referenced by GraphicsWindowX11().

◆ isRealizedImplementation()

virtual bool osgViewer::GraphicsWindowX11::isRealizedImplementation ( ) const
inlinevirtual

Return true if the graphics context has been realised and is ready to use.

Reimplemented from osgViewer::GraphicsWindow.

References _realized.

◆ isSameKindAs()

virtual bool osgViewer::GraphicsWindowX11::isSameKindAs ( const Object * object) const
inlinevirtual

◆ libraryName()

virtual const char * osgViewer::GraphicsWindowX11::libraryName ( ) const
inlinevirtual

return the name of the object's library. Must be defined by derived classes. The OpenSceneGraph convention is that the namespace of a library is the same as the library name.

Reimplemented from osgViewer::GraphicsWindow.

◆ makeCurrentImplementation()

virtual bool osgViewer::GraphicsWindowX11::makeCurrentImplementation ( )
virtual

Make this graphics context current.

Reimplemented from osgViewer::GraphicsWindow.

◆ raiseWindow()

virtual void osgViewer::GraphicsWindowX11::raiseWindow ( )
virtual

Raise specified window

Reimplemented from osgViewer::GraphicsWindow.

◆ realizeImplementation()

virtual bool osgViewer::GraphicsWindowX11::realizeImplementation ( )
virtual

Realise the GraphicsContext.

Reimplemented from osgViewer::GraphicsWindow.

◆ releaseContextImplementation()

virtual bool osgViewer::GraphicsWindowX11::releaseContextImplementation ( )
virtual

Release the graphics context.

Reimplemented from osgViewer::GraphicsWindow.

◆ requestWarpPointer()

virtual void osgViewer::GraphicsWindowX11::requestWarpPointer ( float x,
float y )
virtual

requestWarpPointer(int,int) is requesting a repositioning of the mouse pointer to a specified x,y location on the window. This is used by some camera manipulators to initialise the mouse pointer when mouse position relative to a controls neutral mouse position is required, i.e when mimicking an aircraft joystick.

Reimplemented from osgViewer::GraphicsWindow.

◆ rescanModifierMapping()

void osgViewer::GraphicsWindowX11::rescanModifierMapping ( )
protected

◆ setCursor()

virtual void osgViewer::GraphicsWindowX11::setCursor ( MouseCursor cursor)
virtual

Set mouse cursor to a specific shape.

Reimplemented from osgViewer::GraphicsWindow.

◆ setWindow()

bool osgViewer::GraphicsWindowX11::setWindow ( Window window)
protected

◆ setWindowDecorationImplementation()

virtual bool osgViewer::GraphicsWindowX11::setWindowDecorationImplementation ( bool flag)
virtual

Set Window decoration.

Reimplemented from osgViewer::GraphicsWindow.

◆ setWindowName()

virtual void osgViewer::GraphicsWindowX11::setWindowName ( const std::string & name)
virtual

Set the name of the window

Reimplemented from osgViewer::GraphicsWindow.

◆ setWindowRectangleImplementation()

virtual bool osgViewer::GraphicsWindowX11::setWindowRectangleImplementation ( int x,
int y,
int width,
int height )
virtual

Set the window's position and size.

Reimplemented from osgViewer::GraphicsWindow.

◆ swapBuffersImplementation()

virtual void osgViewer::GraphicsWindowX11::swapBuffersImplementation ( )
virtual

Swap the front and back buffers.

Reimplemented from osgViewer::GraphicsWindow.

◆ syncLocks()

void osgViewer::GraphicsWindowX11::syncLocks ( )
protected

◆ transformMouseXY()

void osgViewer::GraphicsWindowX11::transformMouseXY ( float & x,
float & y )
protected

◆ valid()

virtual bool osgViewer::GraphicsWindowX11::valid ( ) const
inlinevirtual

Return whether a valid and usable GraphicsContext has been created.

Reimplemented from osgViewer::GraphicsWindow.

References _valid.

Referenced by GraphicsWindowX11().

Member Data Documentation

◆ _currentCursor

Cursor osgViewer::GraphicsWindowX11::_currentCursor
protected

◆ _deleteWindow

Atom osgViewer::GraphicsWindowX11::_deleteWindow
protected

◆ _eventDisplay

Display* osgViewer::GraphicsWindowX11::_eventDisplay
protected

◆ _fbConfig

GLXFBConfig osgViewer::GraphicsWindowX11::_fbConfig
protected

Referenced by GraphicsWindowX11().

◆ _initialized

bool osgViewer::GraphicsWindowX11::_initialized
protected

Referenced by GraphicsWindowX11().

◆ _keyMap

char osgViewer::GraphicsWindowX11::_keyMap[32]
protected

Referenced by GraphicsWindowX11().

◆ _lastEventType

int osgViewer::GraphicsWindowX11::_lastEventType
protected

Referenced by GraphicsWindowX11().

◆ _modifierState

int osgViewer::GraphicsWindowX11::_modifierState
protected

Referenced by GraphicsWindowX11().

◆ _mouseCursorMap

std::map<MouseCursor,Cursor> osgViewer::GraphicsWindowX11::_mouseCursorMap
protected

◆ _numLockMask

int osgViewer::GraphicsWindowX11::_numLockMask
protected

Referenced by GraphicsWindowX11().

◆ _ownsWindow

bool osgViewer::GraphicsWindowX11::_ownsWindow
protected

◆ _parent

Window osgViewer::GraphicsWindowX11::_parent
protected

Referenced by getParent(), and GraphicsWindowX11().

◆ _realized

bool osgViewer::GraphicsWindowX11::_realized
protected

◆ _timeOfLastCheckEvents

double osgViewer::GraphicsWindowX11::_timeOfLastCheckEvents
protected

Referenced by GraphicsWindowX11().

◆ _valid

bool osgViewer::GraphicsWindowX11::_valid
protected

Referenced by GraphicsWindowX11(), and valid().

◆ _visualInfo

XVisualInfo* osgViewer::GraphicsWindowX11::_visualInfo
protected

Referenced by GraphicsWindowX11().

◆ _window

Window osgViewer::GraphicsWindowX11::_window
protected

Referenced by getWindow(), and GraphicsWindowX11().


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