DDraceNetwork Documentation
Loading...
Searching...
No Matches
IGraphicsBackend Class Referenceabstract

#include <graphics_threaded.h>

Inheritance diagram for IGraphicsBackend:
[legend]

Public Types

enum  {
  INITFLAG_FULLSCREEN = 1 << 0 , INITFLAG_VSYNC = 1 << 1 , INITFLAG_RESIZABLE = 1 << 2 , INITFLAG_BORDERLESS = 1 << 3 ,
  INITFLAG_DESKTOP_FULLSCREEN = 1 << 4
}

Public Member Functions

virtual ~IGraphicsBackend ()=default
virtual int Init (const char *pName, int *pScreen, int *pWidth, int *pHeight, int *pRefreshRate, int *pFsaaSamples, int Flags, int *pDesktopWidth, int *pDesktopHeight, int *pCurrentWidth, int *pCurrentHeight, class IStorage *pStorage)=0
virtual int Shutdown ()=0
virtual uint64_t TextureMemoryUsage () const =0
virtual uint64_t BufferMemoryUsage () const =0
virtual uint64_t StreamedMemoryUsage () const =0
virtual uint64_t StagingMemoryUsage () const =0
virtual const TTwGraphicsGpuListGetGpus () const =0
virtual void GetVideoModes (CVideoMode *pModes, int MaxModes, int *pNumModes, float HiDPIScale, int MaxWindowWidth, int MaxWindowHeight, int Screen)=0
virtual void GetCurrentVideoMode (CVideoMode &CurMode, float HiDPIScale, int MaxWindowWidth, int MaxWindowHeight, int Screen)=0
virtual int GetNumScreens () const =0
virtual const char * GetScreenName (int Screen) const =0
virtual void Minimize ()=0
virtual void SetWindowParams (int FullscreenMode, bool IsBorderless)=0
virtual bool SetWindowScreen (int Index, bool MoveToCenter)=0
virtual bool UpdateDisplayMode (int Index)=0
virtual int GetWindowScreen ()=0
virtual int WindowActive ()=0
virtual int WindowOpen ()=0
virtual void SetWindowGrab (bool Grab)=0
virtual bool ResizeWindow (int w, int h, int RefreshRate)=0
virtual void GetViewportSize (int &w, int &h)=0
virtual void NotifyWindow ()=0
virtual bool IsScreenKeyboardShown ()=0
virtual void WindowDestroyNtf (uint32_t WindowId)=0
virtual void WindowCreateNtf (uint32_t WindowId)=0
virtual void RunBuffer (CCommandBuffer *pBuffer)=0
virtual void RunBufferSingleThreadedUnsafe (CCommandBuffer *pBuffer)=0
virtual bool IsIdle () const =0
virtual void WaitForIdle ()=0
virtual bool GetDriverVersion (EGraphicsDriverAgeType DriverAgeType, int &Major, int &Minor, int &Patch, const char *&pName, EBackendType BackendType)=0
virtual bool IsConfigModernAPI ()
virtual bool UseTrianglesAsQuad ()
virtual bool HasTileBuffering ()
virtual bool HasQuadBuffering ()
virtual bool HasTextBuffering ()
virtual bool HasQuadContainerBuffering ()
virtual bool Uses2DTextureArrays ()
virtual bool HasTextureArraysSupport ()
virtual const char * GetErrorString ()
virtual const char * GetVendorString ()=0
virtual const char * GetVersionString ()=0
virtual const char * GetRendererString ()=0
virtual TGLBackendReadPresentedImageDataGetReadPresentedImageDataFuncUnsafe ()=0
virtual bool GetWarning (std::vector< std::string > &WarningStrings)=0
virtual std::optional< int > ShowMessageBox (const IGraphics::CMessageBox &MessageBox)=0

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
INITFLAG_FULLSCREEN 
INITFLAG_VSYNC 
INITFLAG_RESIZABLE 
INITFLAG_BORDERLESS 
INITFLAG_DESKTOP_FULLSCREEN 

Constructor & Destructor Documentation

◆ ~IGraphicsBackend()

virtual IGraphicsBackend::~IGraphicsBackend ( )
virtualdefault

Member Function Documentation

◆ BufferMemoryUsage()

virtual uint64_t IGraphicsBackend::BufferMemoryUsage ( ) const
pure virtual

Implemented in CGraphicsBackend_SDL_GL.

◆ GetCurrentVideoMode()

virtual void IGraphicsBackend::GetCurrentVideoMode ( CVideoMode & CurMode,
float HiDPIScale,
int MaxWindowWidth,
int MaxWindowHeight,
int Screen )
pure virtual

Implemented in CGraphicsBackend_SDL_GL.

◆ GetDriverVersion()

virtual bool IGraphicsBackend::GetDriverVersion ( EGraphicsDriverAgeType DriverAgeType,
int & Major,
int & Minor,
int & Patch,
const char *& pName,
EBackendType BackendType )
pure virtual

Implemented in CGraphicsBackend_SDL_GL.

◆ GetErrorString()

virtual const char * IGraphicsBackend::GetErrorString ( )
inlinevirtual

Reimplemented in CGraphicsBackend_SDL_GL.

◆ GetGpus()

virtual const TTwGraphicsGpuList & IGraphicsBackend::GetGpus ( ) const
pure virtual

Implemented in CGraphicsBackend_SDL_GL.

◆ GetNumScreens()

virtual int IGraphicsBackend::GetNumScreens ( ) const
pure virtual

Implemented in CGraphicsBackend_SDL_GL.

◆ GetReadPresentedImageDataFuncUnsafe()

virtual TGLBackendReadPresentedImageData & IGraphicsBackend::GetReadPresentedImageDataFuncUnsafe ( )
pure virtual

Implemented in CGraphicsBackend_SDL_GL.

◆ GetRendererString()

virtual const char * IGraphicsBackend::GetRendererString ( )
pure virtual

Implemented in CGraphicsBackend_SDL_GL.

◆ GetScreenName()

virtual const char * IGraphicsBackend::GetScreenName ( int Screen) const
pure virtual

Implemented in CGraphicsBackend_SDL_GL.

◆ GetVendorString()

virtual const char * IGraphicsBackend::GetVendorString ( )
pure virtual

Implemented in CGraphicsBackend_SDL_GL.

◆ GetVersionString()

virtual const char * IGraphicsBackend::GetVersionString ( )
pure virtual

Implemented in CGraphicsBackend_SDL_GL.

◆ GetVideoModes()

virtual void IGraphicsBackend::GetVideoModes ( CVideoMode * pModes,
int MaxModes,
int * pNumModes,
float HiDPIScale,
int MaxWindowWidth,
int MaxWindowHeight,
int Screen )
pure virtual

Implemented in CGraphicsBackend_SDL_GL.

◆ GetViewportSize()

virtual void IGraphicsBackend::GetViewportSize ( int & w,
int & h )
pure virtual

Implemented in CGraphicsBackend_SDL_GL.

◆ GetWarning()

virtual bool IGraphicsBackend::GetWarning ( std::vector< std::string > & WarningStrings)
pure virtual

Implemented in CGraphicsBackend_Threaded.

◆ GetWindowScreen()

virtual int IGraphicsBackend::GetWindowScreen ( )
pure virtual

Implemented in CGraphicsBackend_SDL_GL.

◆ HasQuadBuffering()

virtual bool IGraphicsBackend::HasQuadBuffering ( )
inlinevirtual

Reimplemented in CGraphicsBackend_SDL_GL.

◆ HasQuadContainerBuffering()

virtual bool IGraphicsBackend::HasQuadContainerBuffering ( )
inlinevirtual

Reimplemented in CGraphicsBackend_SDL_GL.

◆ HasTextBuffering()

virtual bool IGraphicsBackend::HasTextBuffering ( )
inlinevirtual

Reimplemented in CGraphicsBackend_SDL_GL.

◆ HasTextureArraysSupport()

virtual bool IGraphicsBackend::HasTextureArraysSupport ( )
inlinevirtual

Reimplemented in CGraphicsBackend_SDL_GL.

◆ HasTileBuffering()

virtual bool IGraphicsBackend::HasTileBuffering ( )
inlinevirtual

Reimplemented in CGraphicsBackend_SDL_GL.

◆ Init()

virtual int IGraphicsBackend::Init ( const char * pName,
int * pScreen,
int * pWidth,
int * pHeight,
int * pRefreshRate,
int * pFsaaSamples,
int Flags,
int * pDesktopWidth,
int * pDesktopHeight,
int * pCurrentWidth,
int * pCurrentHeight,
class IStorage * pStorage )
pure virtual

Implemented in CGraphicsBackend_SDL_GL.

◆ IsConfigModernAPI()

virtual bool IGraphicsBackend::IsConfigModernAPI ( )
inlinevirtual

Reimplemented in CGraphicsBackend_SDL_GL.

◆ IsIdle()

virtual bool IGraphicsBackend::IsIdle ( ) const
pure virtual

Implemented in CGraphicsBackend_Threaded.

◆ IsScreenKeyboardShown()

virtual bool IGraphicsBackend::IsScreenKeyboardShown ( )
pure virtual

Implemented in CGraphicsBackend_SDL_GL.

◆ Minimize()

virtual void IGraphicsBackend::Minimize ( )
pure virtual

Implemented in CGraphicsBackend_SDL_GL.

◆ NotifyWindow()

virtual void IGraphicsBackend::NotifyWindow ( )
pure virtual

Implemented in CGraphicsBackend_SDL_GL.

◆ ResizeWindow()

virtual bool IGraphicsBackend::ResizeWindow ( int w,
int h,
int RefreshRate )
pure virtual

Implemented in CGraphicsBackend_SDL_GL.

◆ RunBuffer()

virtual void IGraphicsBackend::RunBuffer ( CCommandBuffer * pBuffer)
pure virtual

Implemented in CGraphicsBackend_Threaded.

◆ RunBufferSingleThreadedUnsafe()

virtual void IGraphicsBackend::RunBufferSingleThreadedUnsafe ( CCommandBuffer * pBuffer)
pure virtual

Implemented in CGraphicsBackend_Threaded.

◆ SetWindowGrab()

virtual void IGraphicsBackend::SetWindowGrab ( bool Grab)
pure virtual

Implemented in CGraphicsBackend_SDL_GL.

◆ SetWindowParams()

virtual void IGraphicsBackend::SetWindowParams ( int FullscreenMode,
bool IsBorderless )
pure virtual

Implemented in CGraphicsBackend_SDL_GL.

◆ SetWindowScreen()

virtual bool IGraphicsBackend::SetWindowScreen ( int Index,
bool MoveToCenter )
pure virtual

Implemented in CGraphicsBackend_SDL_GL.

◆ ShowMessageBox()

virtual std::optional< int > IGraphicsBackend::ShowMessageBox ( const IGraphics::CMessageBox & MessageBox)
pure virtual

◆ Shutdown()

virtual int IGraphicsBackend::Shutdown ( )
pure virtual

Implemented in CGraphicsBackend_SDL_GL.

◆ StagingMemoryUsage()

virtual uint64_t IGraphicsBackend::StagingMemoryUsage ( ) const
pure virtual

Implemented in CGraphicsBackend_SDL_GL.

◆ StreamedMemoryUsage()

virtual uint64_t IGraphicsBackend::StreamedMemoryUsage ( ) const
pure virtual

Implemented in CGraphicsBackend_SDL_GL.

◆ TextureMemoryUsage()

virtual uint64_t IGraphicsBackend::TextureMemoryUsage ( ) const
pure virtual

Implemented in CGraphicsBackend_SDL_GL.

◆ UpdateDisplayMode()

virtual bool IGraphicsBackend::UpdateDisplayMode ( int Index)
pure virtual

Implemented in CGraphicsBackend_SDL_GL.

◆ Uses2DTextureArrays()

virtual bool IGraphicsBackend::Uses2DTextureArrays ( )
inlinevirtual

Reimplemented in CGraphicsBackend_SDL_GL.

◆ UseTrianglesAsQuad()

virtual bool IGraphicsBackend::UseTrianglesAsQuad ( )
inlinevirtual

Reimplemented in CGraphicsBackend_SDL_GL.

◆ WaitForIdle()

virtual void IGraphicsBackend::WaitForIdle ( )
pure virtual

Implemented in CGraphicsBackend_Threaded.

◆ WindowActive()

virtual int IGraphicsBackend::WindowActive ( )
pure virtual

Implemented in CGraphicsBackend_SDL_GL.

◆ WindowCreateNtf()

virtual void IGraphicsBackend::WindowCreateNtf ( uint32_t WindowId)
pure virtual

Implemented in CGraphicsBackend_SDL_GL.

◆ WindowDestroyNtf()

virtual void IGraphicsBackend::WindowDestroyNtf ( uint32_t WindowId)
pure virtual

Implemented in CGraphicsBackend_SDL_GL.

◆ WindowOpen()

virtual int IGraphicsBackend::WindowOpen ( )
pure virtual

Implemented in CGraphicsBackend_SDL_GL.


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