ScummVM API documentation
hpl::iGLStateProgram Class Referenceabstract
Inheritance diagram for hpl::iGLStateProgram:
hpl::iGpuProgram hpl::iResourceBase

Public Member Functions

 iGLStateProgram (tString asName)
 
void SetUp (iLowLevelGraphics *apLowLevelGraphics)
 
virtual void Bind ()=0
 
virtual void UnBind ()=0
 
bool CreateFromFile (const tString &asFile, const tString &asEntry)
 
bool SetFloat (const tString &asName, float afX)
 
bool SetVec2f (const tString &asName, float afX, float afY)
 
bool SetVec3f (const tString &asName, float afX, float afY, float afZ)
 
bool SetVec4f (const tString &asName, float afX, float afY, float afZ, float afW)
 
bool SetMatrixf (const tString &asName, const cMatrixf &mMtx)
 
bool SetMatrixf (const tString &asName, eGpuProgramMatrix mType, eGpuProgramMatrixOp mOp)
 
bool SetTexture (const tString &asName, iTexture *apTexture, bool abAutoDisable=true)
 
bool SetTextureToUnit (int alUnit, iTexture *apTexture)
 
eGpuProgramType GetType ()
 
bool reload ()
 
void unload ()
 
void destroy ()
 
- Public Member Functions inherited from hpl::iGpuProgram
 iGpuProgram (const tString &asName)
 
bool SetVec2f (const tString &asName, const cVector2f avVec)
 
bool SetVec3f (const tString &asName, const cVector3f &avVec)
 
bool SetColor3f (const tString &asName, const cColor &aCol)
 
bool SetColor4f (const tString &asName, const cColor &aCol)
 
- Public Member Functions inherited from hpl::iResourceBase
 iResourceBase (tString asName, unsigned long alPrio)
 
tString GetName ()
 
unsigned long GetHandle ()
 
void SetHandle (unsigned long alHandle)
 
tString GetFilePath ()
 
unsigned long GetTime ()
 
unsigned long GetPrio ()
 
unsigned long GetSize ()
 
void SetLogDestruction (bool abX)
 
unsigned int GetUserCount ()
 
void IncUserCount ()
 
void DecUserCount ()
 
bool HasUsers ()
 

Protected Member Functions

virtual void InitData ()=0
 

Protected Attributes

iLowLevelGraphicsmpLowGfx
 
bool mbSetUpDone
 
- Protected Attributes inherited from hpl::iResourceBase
unsigned int mlPrio
 
unsigned long mlTime
 
unsigned long mlSize
 
unsigned int mlUserCount
 
unsigned long mlHandle
 
tString msName
 
tString msFilePath
 
bool mbLogDestruction
 

Additional Inherited Members

- Static Public Member Functions inherited from hpl::iGpuProgram
static void SetLogDebugInformation (bool abX)
 
- Static Public Member Functions inherited from hpl::iResourceBase
static bool GetLogCreateAndDelete ()
 
static void SetLogCreateAndDelete (bool abX)
 
- Static Protected Attributes inherited from hpl::iGpuProgram
static bool mbDebugInfo
 
- Static Protected Attributes inherited from hpl::iResourceBase
static bool mbLogCreateAndDelete
 

Member Function Documentation

◆ Bind()

virtual void hpl::iGLStateProgram::Bind ( )
pure virtual

Bind the program to the GPU

Implements hpl::iGpuProgram.

◆ UnBind()

virtual void hpl::iGLStateProgram::UnBind ( )
pure virtual

Unbind the program to the GPU

Implements hpl::iGpuProgram.

◆ reload()

bool hpl::iGLStateProgram::reload ( )
inlinevirtual

virtual bool Reload()=0;

Returns
true is reload was successful, else false.

Implements hpl::iResourceBase.

◆ unload()

void hpl::iGLStateProgram::unload ( )
inlinevirtual

Free most the memory, save info to get started again.

Implements hpl::iResourceBase.

◆ destroy()

void hpl::iGLStateProgram::destroy ( )
inlinevirtual

Free all memory.

Implements hpl::iResourceBase.


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