OGRE-Next  2.3
Object-Oriented Graphics Rendering Engine
Ogre::GLXGLSupport Class Referencefinal

#include <OgreGLXGLSupport.h>

+ Inheritance diagram for Ogre::GLXGLSupport:

Public Member Functions

 GLXGLSupport ()
 ~GLXGLSupport ()
void addConfig () override
 GL3PlusSupport::addConfig More...
virtual bool checkExtension (const String &ext) const
 Check if an extension is available. More...
GLXFBConfig * chooseFBConfig (const GLint *attribList, GLint *nElements)
 Portable replacement for glXChooseFBConfig. More...
::GLXContext createNewContext (GLXFBConfig fbConfig, GLint renderType, ::GLXContext shareList, GLboolean direct) const
 Portable replacement for glXCreateNewContext. More...
WindowcreateWindow (bool autoCreateWindow, GL3PlusRenderSystem *renderSystem, const String &windowTitle) override
virtual ConfigOptionMapgetConfigOptions ()
virtual unsigned int getDisplayMonitorCount () const
 Gets the number of display monitors. More...
String getDisplayName ()
 Get the name of the display and screen used for rendering. More...
GLint getFBConfigAttrib (GLXFBConfig fbConfig, GLint attribute, GLint *value)
 Portable replacement for glXGetFBConfigAttrib. More...
GLXFBConfig getFBConfigFromContext (::GLXContext context)
 Get the GLXFBConfig used to create a ::GLXContext. More...
GLXFBConfig getFBConfigFromDrawable (GLXDrawable drawable, unsigned int *width, unsigned int *height)
 Get the GLXFBConfig used to create a GLXDrawable. More...
GLXFBConfig getFBConfigFromVisualID (VisualID visualid)
 Gets a GLXFBConfig compatible with a VisualID. More...
DisplaygetGLDisplay ()
 Get the Display connection used for rendering. More...
const StringgetGLVendor () const
 Get vendor information. More...
const DriverVersiongetGLVersion () const
 Get version information. More...
virtual size_t getNumPriorityConfigOptions () const
virtual const char * getPriorityConfigOption (size_t idx) const
void * getProcAddress (const char *procname) const override
 GL3PlusSupport::getProcAddress More...
const StringgetShaderCachePath () const
 Get shader cache path. More...
const StringgetShaderLibraryPath () const
 Get shader library path. More...
XVisualInfogetVisualFromFBConfig (GLXFBConfig fbConfig)
 Portable replacement for glXGetVisualFromFBConfig. More...
DisplaygetXDisplay ()
 Get the Display connection used for window management & events. More...
bool hasMinGLVersion (int major, int minor) const
 Check if GL Version is supported. More...
void initialiseExtensions () override
 GL3PlusSupport::initialiseExtensions More...
bool loadIcon (const String &name, Pixmap *pix, Pixmap *mask)
 Loads an icon from an Ogre resource into the X Server. More...
WindownewWindow (const String &name, uint32 width, uint32 height, bool fullScreen, const NameValuePairList *miscParams=0) override
GLXFBConfig selectFBConfig (const int *minAttribs, const int *maxAttribs)
 Select an FBConfig given a list of required and a list of desired properties. More...
void setConfigOption (const String &name, const String &value) override
 GL3PlusSupport::setConfigOption More...
void setShaderCachePath (String path)
 Set shader cache path. More...
void setShaderLibraryPath (String path)
 Set shader library path. More...
void start () override
 GL3PlusSupport::start More...
void stop () override
 GL3PlusSupport::stop More...
void switchMode ()
 Switch back to original video mode. More...
void switchMode (uint32 width, uint32 height, short frequency)
 Switch video modes. More...
String validateConfig () override
 GL3PlusSupport::validateConfig More...

Public Attributes

Atom mAtomDeleteWindow
Atom mAtomFullScreen
Atom mAtomState

Constructor & Destructor Documentation

◆ GLXGLSupport()

Ogre::GLXGLSupport::GLXGLSupport ( )

◆ ~GLXGLSupport()

Ogre::GLXGLSupport::~GLXGLSupport ( )

Member Function Documentation

◆ addConfig()

void Ogre::GLXGLSupport::addConfig ( )

◆ checkExtension()

virtual bool Ogre::GL3PlusSupport::checkExtension ( const String ext) const

Check if an extension is available.

Reimplemented in Ogre::GTKGLSupport.

◆ chooseFBConfig()

GLXFBConfig* Ogre::GLXGLSupport::chooseFBConfig ( const GLint *  attribList,
GLint *  nElements 

Portable replacement for glXChooseFBConfig.

◆ createNewContext()

::GLXContext Ogre::GLXGLSupport::createNewContext ( GLXFBConfig  fbConfig,
GLint  renderType,
::GLXContext  shareList,
GLboolean  direct 
) const

Portable replacement for glXCreateNewContext.

◆ createWindow()

Window* Ogre::GLXGLSupport::createWindow ( bool  autoCreateWindow,
GL3PlusRenderSystem renderSystem,
const String windowTitle 

Implements Ogre::GL3PlusSupport.

◆ getConfigOptions()

virtual ConfigOptionMap& Ogre::GL3PlusSupport::getConfigOptions ( )

◆ getDisplayMonitorCount()

virtual unsigned int Ogre::GL3PlusSupport::getDisplayMonitorCount ( ) const

Gets the number of display monitors.

See also

Reimplemented in Ogre::Win32GLSupport.

◆ getDisplayName()

String Ogre::GLXGLSupport::getDisplayName ( )

Get the name of the display and screen used for rendering.

Ogre normally opens its own connection to the X server and renders onto the screen where the user logged in

However, if Ogre is passed a current GL context when the first RenderTarget is created, then it will connect to the X server using the same connection as that GL context and direct all subsequent rendering to the screen targeted by that GL context.

Display name.

◆ getFBConfigAttrib()

GLint Ogre::GLXGLSupport::getFBConfigAttrib ( GLXFBConfig  fbConfig,
GLint  attribute,
GLint *  value 

Portable replacement for glXGetFBConfigAttrib.

◆ getFBConfigFromContext()

GLXFBConfig Ogre::GLXGLSupport::getFBConfigFromContext ( ::GLXContext  context)

Get the GLXFBConfig used to create a ::GLXContext.

GLXFBConfig used to create the context

◆ getFBConfigFromDrawable()

GLXFBConfig Ogre::GLXGLSupport::getFBConfigFromDrawable ( GLXDrawable  drawable,
unsigned int *  width,
unsigned int *  height 

Get the GLXFBConfig used to create a GLXDrawable.

Caveat: GLX version 1.3 is needed when the drawable is a GLXPixmap

widthReceiver for the drawable width
heightReceiver for the drawable height
GLXFBConfig used to create the drawable

◆ getFBConfigFromVisualID()

GLXFBConfig Ogre::GLXGLSupport::getFBConfigFromVisualID ( VisualID  visualid)

Gets a GLXFBConfig compatible with a VisualID.

Some platforms fail to implement glXGetFBconfigFromVisualSGIX as part of the GLX_SGIX_fbconfig extension, but this portable alternative suffices for the creation of compatible contexts.

FBConfig for VisualID

◆ getGLDisplay()

Display* Ogre::GLXGLSupport::getGLDisplay ( )

Get the Display connection used for rendering.

This function establishes the initial connection when necessary.

Display connection

◆ getGLVendor()

const String& Ogre::GL3PlusSupport::getGLVendor ( ) const

Get vendor information.

◆ getGLVersion()

const DriverVersion& Ogre::GL3PlusSupport::getGLVersion ( ) const

Get version information.

◆ getNumPriorityConfigOptions()

virtual size_t Ogre::GL3PlusSupport::getNumPriorityConfigOptions ( ) const

◆ getPriorityConfigOption()

virtual const char* Ogre::GL3PlusSupport::getPriorityConfigOption ( size_t  idx) const

◆ getProcAddress()

void* Ogre::GLXGLSupport::getProcAddress ( const char *  procname) const

◆ getShaderCachePath()

const String& Ogre::GL3PlusSupport::getShaderCachePath ( ) const

Get shader cache path.

◆ getShaderLibraryPath()

const String& Ogre::GL3PlusSupport::getShaderLibraryPath ( ) const

Get shader library path.

◆ getVisualFromFBConfig()

XVisualInfo* Ogre::GLXGLSupport::getVisualFromFBConfig ( GLXFBConfig  fbConfig)

Portable replacement for glXGetVisualFromFBConfig.

◆ getXDisplay()

Display* Ogre::GLXGLSupport::getXDisplay ( )

Get the Display connection used for window management & events.

Display connection

◆ hasMinGLVersion()

bool Ogre::GL3PlusSupport::hasMinGLVersion ( int  major,
int  minor 
) const

Check if GL Version is supported.

◆ initialiseExtensions()

void Ogre::GLXGLSupport::initialiseExtensions ( )

◆ loadIcon()

bool Ogre::GLXGLSupport::loadIcon ( const String name,
Pixmap *  pix,
Pixmap *  mask 

Loads an icon from an Ogre resource into the X Server.

This currently only works for 24 and 32 bit displays. The image must be findable by the Ogre resource system, and of format PF_A8R8G8B8.

displayX display
nameName of image to load
pixReceiver for the output pixmap
maskReceiver for the output mask (alpha bitmap)
true on success

◆ newWindow()

Window* Ogre::GLXGLSupport::newWindow ( const String name,
uint32  width,
uint32  height,
bool  fullScreen,
const NameValuePairList miscParams = 0 

Implements Ogre::GL3PlusSupport.

◆ selectFBConfig()

GLXFBConfig Ogre::GLXGLSupport::selectFBConfig ( const int *  minAttribs,
const int *  maxAttribs 

Select an FBConfig given a list of required and a list of desired properties.

minAttribsFBConfig attributes that must be provided with minimum values
maxAttribsFBConfig attributes that are desirable with maximum values
GLXFBConfig with attributes or 0 when unsupported.

◆ setConfigOption()

void Ogre::GLXGLSupport::setConfigOption ( const String name,
const String value 

◆ setShaderCachePath()

void Ogre::GL3PlusSupport::setShaderCachePath ( String  path)

Set shader cache path.

◆ setShaderLibraryPath()

void Ogre::GL3PlusSupport::setShaderLibraryPath ( String  path)

Set shader library path.

◆ start()

void Ogre::GLXGLSupport::start ( )

◆ stop()

void Ogre::GLXGLSupport::stop ( )

◆ switchMode() [1/2]

void Ogre::GLXGLSupport::switchMode ( )

Switch back to original video mode.

◆ switchMode() [2/2]

void Ogre::GLXGLSupport::switchMode ( uint32  width,
uint32  height,
short  frequency 

Switch video modes.

widthReceiver for requested and final width
heightReceiver for requested and final drawable height
heightReceiver for requested and final drawable frequency

◆ validateConfig()

String Ogre::GLXGLSupport::validateConfig ( )

Member Data Documentation

◆ mAtomDeleteWindow

Atom Ogre::GLXGLSupport::mAtomDeleteWindow

◆ mAtomFullScreen

Atom Ogre::GLXGLSupport::mAtomFullScreen

◆ mAtomState

Atom Ogre::GLXGLSupport::mAtomState

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