Pyrogenesis HEAD
Pyrogenesis, a RTS Engine
CTerrainTextureManager Class Reference

#include <TerrainTextureManager.h>

Inheritance diagram for CTerrainTextureManager:
Collaboration diagram for CTerrainTextureManager:

Public Types

using TerrainGroupMap = std::map< CStr, CTerrainGroup * >
 
using TerrainAlphaMap = std::map< VfsPath, TerrainAlpha >
 

Public Member Functions

 CTerrainTextureManager (Renderer::Backend::IDevice *device)
 
 ~CTerrainTextureManager ()
 
int LoadTerrainTextures ()
 
void UnloadTerrainTextures ()
 
CTerrainTextureEntryFindTexture (const CStr &tag) const
 
CTerrainTextureEntryAddTexture (const CTerrainPropertiesPtr &props, const VfsPath &path)
 
void DeleteTexture (CTerrainTextureEntry *entry)
 
CTerrainGroupFindGroup (const CStr &name)
 
const TerrainGroupMapGetGroups () const
 
CTerrainTextureManager::TerrainAlphaMap::iterator LoadAlphaMap (const VfsPath &alphaMapType)
 
void UploadResourcesIfNeeded (Renderer::Backend::IDeviceCommandContext *deviceCommandContext)
 
- Public Member Functions inherited from Singleton< CTerrainTextureManager >
 Singleton ()
 
 ~Singleton ()
 

Private Attributes

Renderer::Backend::IDevicem_Device = nullptr
 
std::vector< CTerrainTextureEntry * > m_TextureEntries
 
TerrainGroupMap m_TerrainGroups
 
TerrainAlphaMap m_TerrainAlphas
 
size_t m_LastGroupIndex = 0
 
std::vector< CTerrainTextureManager::TerrainAlphaMap::iterator > m_AlphaMapsToUpload
 

Friends

class CTerrainTextureEntry
 

Additional Inherited Members

- Static Public Member Functions inherited from Singleton< CTerrainTextureManager >
static CTerrainTextureManagerGetSingleton ()
 
static CTerrainTextureManagerGetSingletonPtr ()
 
static bool IsInitialised ()
 

Member Typedef Documentation

◆ TerrainAlphaMap

◆ TerrainGroupMap

Constructor & Destructor Documentation

◆ CTerrainTextureManager()

CTerrainTextureManager::CTerrainTextureManager ( Renderer::Backend::IDevice device)

◆ ~CTerrainTextureManager()

CTerrainTextureManager::~CTerrainTextureManager ( )

Member Function Documentation

◆ AddTexture()

CTerrainTextureEntry * CTerrainTextureManager::AddTexture ( const CTerrainPropertiesPtr props,
const VfsPath path 
)

◆ DeleteTexture()

void CTerrainTextureManager::DeleteTexture ( CTerrainTextureEntry entry)

◆ FindGroup()

CTerrainGroup * CTerrainTextureManager::FindGroup ( const CStr &  name)

◆ FindTexture()

CTerrainTextureEntry * CTerrainTextureManager::FindTexture ( const CStr &  tag) const

◆ GetGroups()

const TerrainGroupMap & CTerrainTextureManager::GetGroups ( ) const
inline

◆ LoadAlphaMap()

CTerrainTextureManager::TerrainAlphaMap::iterator CTerrainTextureManager::LoadAlphaMap ( const VfsPath alphaMapType)

◆ LoadTerrainTextures()

int CTerrainTextureManager::LoadTerrainTextures ( )

◆ UnloadTerrainTextures()

void CTerrainTextureManager::UnloadTerrainTextures ( )

◆ UploadResourcesIfNeeded()

void CTerrainTextureManager::UploadResourcesIfNeeded ( Renderer::Backend::IDeviceCommandContext deviceCommandContext)

Friends And Related Function Documentation

◆ CTerrainTextureEntry

friend class CTerrainTextureEntry
friend

Member Data Documentation

◆ m_AlphaMapsToUpload

std::vector<CTerrainTextureManager::TerrainAlphaMap::iterator> CTerrainTextureManager::m_AlphaMapsToUpload
private

◆ m_Device

Renderer::Backend::IDevice* CTerrainTextureManager::m_Device = nullptr
private

◆ m_LastGroupIndex

size_t CTerrainTextureManager::m_LastGroupIndex = 0
private

◆ m_TerrainAlphas

TerrainAlphaMap CTerrainTextureManager::m_TerrainAlphas
private

◆ m_TerrainGroups

TerrainGroupMap CTerrainTextureManager::m_TerrainGroups
private

◆ m_TextureEntries

std::vector<CTerrainTextureEntry*> CTerrainTextureManager::m_TextureEntries
private

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