OSG  3.4.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Classes | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
osgViewer::GraphicsWindowX11 Class Reference

#include <GraphicsWindowX11.h>

Inheritance diagram for osgViewer::GraphicsWindowX11:
Inheritance graph
[legend]
Collaboration diagram for osgViewer::GraphicsWindowX11:
Collaboration graph
[legend]

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 setCursor (MouseCursor)
 
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 swapBuffersCallbackOrImplemenation ()
 
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 StateAttributeasStateAttribute ()
 
virtual const StateAttributeasStateAttribute () const
 
virtual UniformasUniform ()
 
virtual const UniformasUniform () 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)
 
osg::UserDataContainergetUserDataContainer ()
 
const osg::UserDataContainergetUserDataContainer () const
 
osg::UserDataContainergetOrCreateUserDataContainer ()
 
virtual void setUserData (Referenced *obj)
 
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
 
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
 
OpenThreads::Thread_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
< ScreenSettings
ScreenSettingsList
 
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 void setWindowingSystemInterface (WindowingSystemInterface *wsInterface)
 
static WindowingSystemInterfacegetWindowingSystemInterface ()
 
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 setThreadSafeReferenceCounting (bool enableThreadSafeReferenceCounting)
 
static bool getThreadSafeReferenceCounting ()
 
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)
 

Detailed Description

Definition at line 30 of file GraphicsWindowX11.h.

Constructor & Destructor Documentation

osgViewer::GraphicsWindowX11::GraphicsWindowX11 ( osg::GraphicsContext::Traits traits)
inline

Definition at line 34 of file GraphicsWindowX11.h.

Here is the call graph for this function:

osgViewer::GraphicsWindowX11::~GraphicsWindowX11 ( )
protected

Member Function Documentation

void osgViewer::GraphicsWindowX11::adaptKey ( XKeyEvent &  keyevent,
int &  keySymbol,
int &  unmodifiedKeySymbol 
)
protected
bool osgViewer::GraphicsWindowX11::checkAndSendEventFullScreenIfNeeded ( Display *  display,
int  x,
int  y,
int  width,
int  height,
bool  windowDecoration 
)
protected
virtual bool osgViewer::GraphicsWindowX11::checkEvents ( )
virtual

Check to see if any events have been generated.

Reimplemented from osgViewer::GraphicsWindow.

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.

Definition at line 77 of file GraphicsWindowX11.h.

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

Close the graphics context.

Reimplemented from osgViewer::GraphicsWindow.

bool osgViewer::GraphicsWindowX11::createVisualInfo ( )
protected
bool osgViewer::GraphicsWindowX11::createWindow ( )
protected
void osgViewer::GraphicsWindowX11::flushKeyEvents ( )
protected
void osgViewer::GraphicsWindowX11::forceKey ( int  key,
double  time,
bool  state 
)
protected
Cursor osgViewer::GraphicsWindowX11::getCurrentCursor ( )
inline

Definition at line 146 of file GraphicsWindowX11.h.

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

Definition at line 139 of file GraphicsWindowX11.h.

void osgViewer::GraphicsWindowX11::getModifierMap ( char *  keymap) const
protected
int osgViewer::GraphicsWindowX11::getModifierMask ( ) const
protected
Cursor osgViewer::GraphicsWindowX11::getOrCreateCursor ( MouseCursor  mouseShape)
protected
Window& osgViewer::GraphicsWindowX11::getParent ( )
inline

Definition at line 143 of file GraphicsWindowX11.h.

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

Definition at line 144 of file GraphicsWindowX11.h.

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

Get focus.

Reimplemented from osgViewer::GraphicsWindow.

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

Get focus on if the pointer is in this window.

Reimplemented from osgViewer::GraphicsWindow.

void osgViewer::GraphicsWindowX11::init ( )
protected
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.

Definition at line 85 of file GraphicsWindowX11.h.

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

Reimplemented from osgViewer::GraphicsWindow.

Definition at line 75 of file GraphicsWindowX11.h.

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.

Definition at line 76 of file GraphicsWindowX11.h.

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

Make this graphics context current.

Reimplemented from osgViewer::GraphicsWindow.

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

Raise specified window

Reimplemented from osgViewer::GraphicsWindow.

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

Realise the GraphicsContext.

Reimplemented from osgViewer::GraphicsWindow.

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

Release the graphics context.

Reimplemented from osgViewer::GraphicsWindow.

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.

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

Set mouse cursor to a specific shape.

bool osgViewer::GraphicsWindowX11::setWindow ( Window  window)
protected
virtual bool osgViewer::GraphicsWindowX11::setWindowDecorationImplementation ( bool  flag)
virtual

Set Window decoration.

Reimplemented from osgViewer::GraphicsWindow.

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

Set the name of the window

Reimplemented from osgViewer::GraphicsWindow.

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.

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

Swap the front and back buffers.

Reimplemented from osgViewer::GraphicsWindow.

void osgViewer::GraphicsWindowX11::syncLocks ( )
protected
void osgViewer::GraphicsWindowX11::transformMouseXY ( float &  x,
float &  y 
)
protected
virtual bool osgViewer::GraphicsWindowX11::valid ( ) const
inlinevirtual

Return whether a valid and usable GraphicsContext has been created.

Reimplemented from osgViewer::GraphicsWindow.

Definition at line 79 of file GraphicsWindowX11.h.

Member Data Documentation

Cursor osgViewer::GraphicsWindowX11::_currentCursor
protected

Definition at line 185 of file GraphicsWindowX11.h.

Atom osgViewer::GraphicsWindowX11::_deleteWindow
protected

Definition at line 187 of file GraphicsWindowX11.h.

Display* osgViewer::GraphicsWindowX11::_eventDisplay
protected

Definition at line 175 of file GraphicsWindowX11.h.

bool osgViewer::GraphicsWindowX11::_initialized
protected

Definition at line 189 of file GraphicsWindowX11.h.

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

Definition at line 198 of file GraphicsWindowX11.h.

int osgViewer::GraphicsWindowX11::_lastEventType
protected

Definition at line 194 of file GraphicsWindowX11.h.

int osgViewer::GraphicsWindowX11::_modifierState
protected

Definition at line 195 of file GraphicsWindowX11.h.

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

Definition at line 199 of file GraphicsWindowX11.h.

int osgViewer::GraphicsWindowX11::_numLockMask
protected

Definition at line 196 of file GraphicsWindowX11.h.

bool osgViewer::GraphicsWindowX11::_ownsWindow
protected

Definition at line 191 of file GraphicsWindowX11.h.

Window osgViewer::GraphicsWindowX11::_parent
protected

Definition at line 176 of file GraphicsWindowX11.h.

bool osgViewer::GraphicsWindowX11::_realized
protected

Definition at line 190 of file GraphicsWindowX11.h.

double osgViewer::GraphicsWindowX11::_timeOfLastCheckEvents
protected

Definition at line 193 of file GraphicsWindowX11.h.

bool osgViewer::GraphicsWindowX11::_valid
protected

Definition at line 174 of file GraphicsWindowX11.h.

XVisualInfo* osgViewer::GraphicsWindowX11::_visualInfo
protected

Definition at line 178 of file GraphicsWindowX11.h.

Window osgViewer::GraphicsWindowX11::_window
protected

Definition at line 177 of file GraphicsWindowX11.h.


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