OpenBarnyard
 
Loading...
Searching...
No Matches
TTexture Class Referenceabstract

#include <TTexture_Rev.h>

Inheritance diagram for TTexture:
TResource TObject TNodeTree< T >::TNode TTextureResourceHAL

Classes

struct  LOCKSTATE
 

Public Member Functions

 TDECLARE_CLASS (TTexture, TResource)
 
 TTexture ()
 
 ~TTexture ()
 
virtual TUINT GetWidth ()=0
 
virtual TUINT GetHeight ()=0
 
virtual TBOOL Lock (LOCKSTATE &a_rLockState)
 
virtual void Unlock ()
 
virtual void CreateFromT2Texture (T2Texture *a_pTexture)=0
 
virtual TBOOL Create (void *a_pData, TUINT a_uiDataSize, TUINT a_eTextureFlags, TUINT a_uiWidth, TUINT a_uiHeight)=0
 
virtual TBOOL Create (const TCHAR *a_szFileName, TUINT a_eTextureFlags)=0
 
virtual TBOOL CreateEx (void *a_pData, TUINT a_uiDataSize, TUINT a_uiWidth, TUINT a_uiHeight, TUINT a_uiMipLevels, TTEXTURERESOURCEFORMAT a_eFormat, TUINT a_uiMipMapFlags)
 
void SetAddressing (ADDRESSINGMODE a_eAddressing)
 
ADDRESSINGMODE GetAddressing () const
 
TBOOL CreateResource (void *a_pData, TUINT a_uiDataSize, TUINT a_eTextureFlags, TUINT a_uiWidth, TUINT a_uiHeight)
 
TBOOL CreateResource (const TCHAR *a_szFileName, TUINT a_eTextureFlags)
 
TBOOL CreateResource (void *a_pData, TUINT a_uiDataSize, TUINT a_uiWidth, TUINT a_uiHeight, TUINT a_uiMipLevels, TTEXTURERESOURCEFORMAT a_eFormat, TUINT a_uiFlags)
 
- Public Member Functions inherited from TResource
 TDECLARE_CLASS (TResource, TObject)
 
 TResource ()
 
 ~TResource ()
 
virtual TBOOL Create ()
 
virtual TBOOL Validate ()
 
virtual void Invalidate ()
 
virtual void DestroyResource ()
 
virtual TBOOL TryInvalidate ()
 
virtual TBOOL TryValidate ()
 
virtual void OnDestroy ()
 
TBOOL IsDead () const
 
TBOOL IsDying () const
 
TBOOL IsValid () const
 
TBOOL IsExternal () const
 
TBOOL IsCreated () const
 
TBOOL IsSceneObject () const
 
TBOOL IsInvalid () const
 
void SetState (TResourceState newState)
 
void AddState (TResourceState state)
 
void SetParent (TResource *a_pParent)
 
const TCHARGetName () const
 
void SetName (const TCHAR *name)
 
TBOOL RecurseSimple (t_RecurseCb a_pCallback, TResource *a_pResource, void *a_pUserData)
 
TRenderInterfaceGetRenderer () const
 
void SetRenderer (TRenderInterface *pRenderer)
 
TUINT32 GetUId () const
 
void SetUId (TUINT32 uid)
 
- Public Member Functions inherited from TObject
virtual Toshi::TClass * GetClass ()
 
virtual void Delete ()
 
virtual ~TObject ()
 
TBOOL IsExactly (TClass *a_pClass)
 
TBOOL IsA (TClass *a_pClass)
 
- Public Member Functions inherited from TNodeTree< T >::TNode
TBOOL IsChildOfDefaultRoot () const
 
TBOOL IsLinked () const
 
T * Parent () const
 
T * Next () const
 
T * Prev () const
 
TNodeTree< T > * Tree () const
 
T * Child () const
 

Public Attributes

friend TTextureFactory
 
- Public Attributes inherited from TResource
friend TRenderInterface
 
- Public Attributes inherited from TNodeTree< T >::TNode
friend TNodeTree
 

Protected Attributes

ADDRESSINGMODE m_eAddressing
 
TUINT m_eTextureFlags
 
TTextureFactory::NameEntrym_pNameEntry
 
- Protected Attributes inherited from TNodeTree< T >::TNode
TNodeTree< T > * m_Tree
 
T * m_Next
 
T * m_Prev
 
T * m_Parent
 
T * m_Child
 

Additional Inherited Members

- Public Types inherited from TResource
using t_RecurseCb = TBOOL ( * )( TResource* a_pResource, void* a_pUserData )
 
- Public Types inherited from TObject
enum  { IsTObject = TTRUE }
 
- Static Public Member Functions inherited from TResource
static TBOOL Recurse (t_RecurseCb a_pCallback, TResource *a_pResource, TBOOL a_bFlag, void *a_pUserData)
 
- Static Public Member Functions inherited from TObject
static Toshi::TObject * CreateTObject ()
 
static Toshi::TObject * CreateTObjectInPlace (void *a_pPtr)
 
static void InitialiseClass ()
 
static void DeinitialiseClass ()
 
static TFORCEINLINE TClassGetClassStatic ()
 
- Static Public Attributes inherited from TResource
static constexpr size_t MAXNAMELEN = 14
 
- Static Public Attributes inherited from TObject
static constexpr Toshi::TClass * PARENTCLASS = TNULL
 
static constinit Toshi::TClass ms_oClass = Toshi::TClass( "TObject", TObject::CreateTObject, TObject::CreateTObjectInPlace, TObject::InitialiseClass, TObject::DeinitialiseClass, 0, 2, sizeof( TObject ), alignof( TObject ) )
 
- Protected Member Functions inherited from TNodeTree< T >::TNode
 TNode ()
 

Detailed Description

Definition at line 9 of file TTexture_Rev.h.

Constructor & Destructor Documentation

◆ TTexture()

TTexture::TTexture ( )

Definition at line 15 of file TTexture.cpp.

16{
20}
@ ADDRESSINGMODE_WRAP
Definition TRender.h:40
#define TNULL
Definition Typedefs.h:23
TTextureFactory::NameEntry * m_pNameEntry
Definition TTexture.h:78
TUINT m_eTextureFlags
Definition TTexture.h:77
ADDRESSINGMODE m_eAddressing
Definition TTexture.h:76

◆ ~TTexture()

TTexture::~TTexture ( )

Definition at line 22 of file TTexture.cpp.

23{
25
26 pTexFactory->DeregisterTexture( this );
27}
@ SYSRESOURCE_TEXTUREFACTORY
Definition TRender.h:20
friend TTextureFactory
Definition TTexture.h:35
T * GetSystemResource(SYSRESOURCE systemResource)
void DeregisterTexture(TTexture *a_pTexture)
static TFORCEINLINE TRenderInterface * GetSingleton()
Definition TSingleton.h:49

Member Function Documentation

◆ Create() [1/2]

virtual TBOOL TTexture::Create ( const TCHAR * a_szFileName,
TUINT a_eTextureFlags )
pure virtual

Implemented in TTextureResourceHAL.

◆ Create() [2/2]

virtual TBOOL TTexture::Create ( void * a_pData,
TUINT a_uiDataSize,
TUINT a_eTextureFlags,
TUINT a_uiWidth,
TUINT a_uiHeight )
pure virtual

Implemented in TTextureResourceHAL.

◆ CreateEx()

TBOOL TTexture::CreateEx ( void * a_pData,
TUINT a_uiDataSize,
TUINT a_uiWidth,
TUINT a_uiHeight,
TUINT a_uiMipLevels,
TTEXTURERESOURCEFORMAT a_eFormat,
TUINT a_uiMipMapFlags )
virtual

Reimplemented in TTextureResourceHAL.

Definition at line 38 of file TTexture.cpp.

39{
40 return TResource::Create();
41}
virtual TBOOL Create()
Definition TResource.cpp:28

◆ CreateFromT2Texture()

virtual void TTexture::CreateFromT2Texture ( T2Texture * a_pTexture)
pure virtual

Implemented in TTextureResourceHAL.

◆ CreateResource() [1/3]

TBOOL TTexture::CreateResource ( const TCHAR * a_szFileName,
TUINT a_eTextureFlags )
inline

Definition at line 65 of file TTexture.h.

66 {
67 return TResource::Create();
68 }

◆ CreateResource() [2/3]

TBOOL TTexture::CreateResource ( void * a_pData,
TUINT a_uiDataSize,
TUINT a_eTextureFlags,
TUINT a_uiWidth,
TUINT a_uiHeight )
inline

Definition at line 60 of file TTexture.h.

61 {
62 return TResource::Create();
63 }

◆ CreateResource() [3/3]

TBOOL TTexture::CreateResource ( void * a_pData,
TUINT a_uiDataSize,
TUINT a_uiWidth,
TUINT a_uiHeight,
TUINT a_uiMipLevels,
TTEXTURERESOURCEFORMAT a_eFormat,
TUINT a_uiFlags )
inline

Definition at line 70 of file TTexture.h.

71 {
72 return TResource::Create();
73 }

◆ GetAddressing()

ADDRESSINGMODE TTexture::GetAddressing ( ) const
inline

Definition at line 55 of file TTexture.h.

56 {
57 return m_eAddressing;
58 }

◆ GetHeight()

virtual TUINT TTexture::GetHeight ( )
pure virtual

Implemented in TTextureResourceHAL.

◆ GetWidth()

virtual TUINT TTexture::GetWidth ( )
pure virtual

Implemented in TTextureResourceHAL.

◆ Lock()

TBOOL TTexture::Lock ( LOCKSTATE & a_rLockState)
virtual

Reimplemented in TTextureResourceHAL.

Definition at line 29 of file TTexture.cpp.

30{
31 return TFALSE;
32}
#define TFALSE
Definition Typedefs.h:24

◆ SetAddressing()

void TTexture::SetAddressing ( ADDRESSINGMODE a_eAddressing)
inline

Definition at line 50 of file TTexture.h.

51 {
52 m_eAddressing = a_eAddressing;
53 }

◆ TDECLARE_CLASS()

TTexture::TDECLARE_CLASS ( TTexture ,
TResource  )

◆ Unlock()

void TTexture::Unlock ( )
virtual

Reimplemented in TTextureResourceHAL.

Definition at line 34 of file TTexture.cpp.

35{
36}

Member Data Documentation

◆ m_eAddressing

ADDRESSINGMODE TTexture::m_eAddressing
protected

Definition at line 76 of file TTexture.h.

◆ m_eTextureFlags

TUINT TTexture::m_eTextureFlags
protected

Definition at line 77 of file TTexture.h.

◆ m_pNameEntry

TTextureFactory::NameEntry* TTexture::m_pNameEntry
protected

Definition at line 78 of file TTexture.h.

◆ TTextureFactory

friend TTexture::TTextureFactory

Definition at line 35 of file TTexture.h.


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