Main Page | Class Hierarchy | Class List | File List | Class Members | Related Pages

CTextureManager Class Reference

Texture Manager class. More...

#include <TextureManager.h>

Inheritance diagram for CTextureManager:

CResourceManager CSingleton< CTextureManager > CDoubleList< CXMLResource * > CXMLResource CResource CEntity List of all members.

Public Member Functions

virtual CTextureLoadResource (TiXmlNode *pDataNode, CString strFilename, UINT uiID=0, CString strName="")
virtual CTextureGetResource (int uiIndex, int uiID=-1, CString strName="", CString strFilename="")
virtual CTextureAddResource (CString strName, UINT uiID=0, eEntityType ResourceType=Entity_Default)
int RemoveResource (CTexture *pTexture)
virtual int LoadXML (TiXmlNode *pDataNode, CString strFilename)
virtual int SaveXML (TiXmlNode *pDataNode, CString strFilename)
virtual void Destroy ()
virtual bool IsOfType (eEntityType eType)

Detailed Description

Texture Manager class.

This class provides means to managing various textures (either DirectX or OpenGL ones) It manages a collection of textures (although not pooled yet!) and allow to retrieve them by index, name, ID or filename.

Definition at line 14 of file TextureManager.h.


Member Function Documentation

CTexture * CTextureManager::AddResource CString  strName,
UINT  uiID = 0,
eEntityType  ResourceType = Entity_Default
[virtual]
 

Method details:

Parameters:
strName - Name of the texture to add
uiID - ID of the texture to add
ResourceType - Type of the texture to add
Returns:
Pointer to the texture if it has been added succesfully using given parameters, NULL if not

Reimplemented from CResourceManager.

Definition at line 16 of file TextureManager.cpp.

References CDoubleList< CXMLResource * >::push_back(), CEntity::SetID(), and CEntity::SetName().

void CTextureManager::Destroy  )  [virtual]
 

Method details: This is where clean-up occurs

Reimplemented from CResourceManager.

Definition at line 243 of file TextureManager.cpp.

References CResourceManager::Destroy().

CTexture * CTextureManager::GetResource int  uiIndex,
int  uiID = -1,
CString  strName = "",
CString  strFilename = ""
[virtual]
 

Method details:

Parameters:
uiIndex - Index by which to retrieve the texture
uiID - ID by which to retrieve the texture
strName - Name by which to retrieve the texture
strFilename - Filename by which to retrieve the texture
Returns:
Pointer to the texture if it has been found using given parameters, NULL if not

Reimplemented from CResourceManager.

Definition at line 187 of file TextureManager.cpp.

References CDoubleList< CXMLResource * >::at(), CDoubleList< CXMLResource * >::begin(), CEntity::GetID(), CEntity::GetName(), CDoubleList< CXMLResource * >::next(), CDoubleList< CXMLResource * >::set_ptr(), and CDoubleList< CXMLResource * >::size().

Referenced by LoadResource(), and CGUIElement::PropertyChanging().

bool CTextureManager::IsOfType eEntityType  eType  )  [virtual]
 

Method details: This is an implementation of Custom RTTI

Reimplemented from CResourceManager.

Definition at line 248 of file TextureManager.cpp.

References CResourceManager::IsOfType().

CTexture * CTextureManager::LoadResource TiXmlNode pDataNode,
CString  strFilename,
UINT  uiID = 0,
CString  strName = ""
[virtual]
 

Method details:

Parameters:
pDataNode - Pointer to XML Data node containing data for the texture
strFilename - Name of the file containing data for the texture
uiID - ID for the texture to be loaded
strName - Name for the texture to be loaded
Returns:
Pointer to the texture if it has been loaded succesfully, NULL if not

Implements CResourceManager.

Definition at line 119 of file TextureManager.cpp.

References TiXmlElement::Attribute(), CEntity::GetID(), CEntity::GetName(), GetResource(), CTexture::LoadXML(), CDoubleList< CXMLResource * >::push_back(), CEntity::SetID(), CEntity::SetName(), and TiXmlNode::ToElement().

Referenced by LoadXML(), CTextureFrameAnimation::LoadXML(), CGUIElement::LoadXML(), and CBitmapFont::LoadXML().

int CTextureManager::LoadXML TiXmlNode pDataNode,
CString  strFilename
[virtual]
 

Method details:

Parameters:
pDataNode - Pointer to XML Node that holds data for this texture
strFilename - String containing filename where the data for the texture is stored

Reimplemented from CResourceManager.

Definition at line 37 of file TextureManager.cpp.

References TiXmlNode::FirstChild(), CEntity::GetID(), CEntity::GetName(), CSingleton< CGlobalLogger >::GetSingleton(), TiXmlNode::IterateChildren(), LoadResource(), CResourceManager::LoadXML(), TiXmlNode::pcValue(), and CLogger::Write().

int CTextureManager::RemoveResource CTexture pTexture  ) 
 

Method details:

Parameters:
pResource - Pointer to the texture to remove
Returns:
1 if it has been found and removed succesfully, 0 otherwise
Definition at line 237 of file TextureManager.cpp.

int CTextureManager::SaveXML TiXmlNode pDataNode,
CString  strFilename
[virtual]
 

Method details:

Parameters:
pDataNode - Pointer to XML Node that will be the parent hold the data for this texture
strFilename - String containing filename where the data for the texture is stored

Reimplemented from CResourceManager.

Definition at line 80 of file TextureManager.cpp.

References CDoubleList< CXMLResource * >::begin(), TiXmlNode::InsertEndChild(), CDoubleList< CXMLResource * >::next(), TiXmlDocument::SaveFile(), CTexture::SaveXML(), CDoubleList< CXMLResource * >::set_ptr(), and TiXmlNode::ToElement().


The documentation for this class was generated from the following files:
Generated on Sun Jul 17 21:34:30 2005 for OpenGL GUI by doxygen 1.3.8