Crazy Eddie's GUI System  ${CEGUI_VERSION}
CEGUI::CompositeResourceProvider Class Reference
+ Inheritance diagram for CEGUI::CompositeResourceProvider:
+ Collaboration diagram for CEGUI::CompositeResourceProvider:

Public Types

typedef ConstMapIterator< Providermap > ProviderIterator
 
typedef ConstMapIterator< Providermap > ProviderIterator
 

Public Member Functions

void add (ResourceProvider *prov, const String &name)
 adds a ResourceProvider More...
 
template<typename T >
void add (const String &name)
 creates and add a ResourceProvider More...
 
void remove (ResourceProvider *prov)
 removes a ResourceProvider More...
 
void remove (const String &name)
 removes a ResourceProvider More...
 
ResourceProvider * get (const String &name)
 get a ResourceProvider More...
 
void loadRawDataContainer (const String &filename, RawDataContainer &output, const String &resourceGroup)
 Load XML data using InputSource objects. More...
 
size_t getResourceGroupFileNames (std::vector< String > &out_vec, const String &file_pattern, const String &resource_group)
 
ProviderIterator getIterator () const
 
void add (ResourceProvider *prov, const String &name)
 adds a ResourceProvider More...
 
template<typename T >
void add (const String &name)
 creates and add a ResourceProvider More...
 
void remove (ResourceProvider *prov)
 removes a ResourceProvider More...
 
void remove (const String &name)
 removes a ResourceProvider More...
 
ResourceProvider * get (const String &name)
 get a ResourceProvider More...
 
void loadRawDataContainer (const String &filename, RawDataContainer &output, const String &resourceGroup)
 Load XML data using InputSource objects. More...
 
size_t getResourceGroupFileNames (std::vector< String > &out_vec, const String &file_pattern, const String &resource_group)
 
ProviderIterator getIterator () const
 
- Public Member Functions inherited from CEGUI::ResourceProvider
 ResourceProvider ()
 Constructor for the ResourceProvider class.
 
virtual ~ResourceProvider (void)
 Destructor for the ResourceProvider class.
 
virtual void unloadRawDataContainer (RawDataContainer &)
 Unload raw binary data. This gives the resource provider a change to unload the data in its own way before the data container object is destroyed. If it does nothing, then the object will release its memory. More...
 
const String & getDefaultResourceGroup (void) const
 Return the current default resource group identifier. More...
 
void setDefaultResourceGroup (const String &resourceGroup)
 Set the default resource group identifier. More...
 
 ResourceProvider ()
 Constructor for the ResourceProvider class.
 
virtual ~ResourceProvider (void)
 Destructor for the ResourceProvider class.
 
virtual void unloadRawDataContainer (RawDataContainer &)
 Unload raw binary data. This gives the resource provider a change to unload the data in its own way before the data container object is destroyed. If it does nothing, then the object will release its memory. More...
 
const String & getDefaultResourceGroup (void) const
 Return the current default resource group identifier. More...
 
void setDefaultResourceGroup (const String &resourceGroup)
 Set the default resource group identifier. More...
 

Protected Types

typedef std::map< String, ResourceProvider *, StringFastLessCompare > Providermap
 
typedef std::map< String, ResourceProvider *, StringFastLessCompare > Providermap
 

Protected Attributes

Providermap d_providerlist
 
- Protected Attributes inherited from CEGUI::ResourceProvider
String d_defaultResourceGroup
 Default resource group identifier.
 

Member Function Documentation

◆ add() [1/4]

void CEGUI::CompositeResourceProvider::add ( ResourceProvider *  prov,
const String &  name 
)

adds a ResourceProvider

Parameters
provA pointer to an ResourceProvider (ownership is taken).
nameA String thats names the provider inside this holder.
Returns
Nothing.

◆ add() [2/4]

void CEGUI::CompositeResourceProvider::add ( ResourceProvider *  prov,
const String &  name 
)

adds a ResourceProvider

Parameters
provA pointer to an ResourceProvider (ownership is taken).
nameA String thats names the provider inside this holder.
Returns
Nothing.

◆ add() [3/4]

template<typename T >
void CEGUI::CompositeResourceProvider::add ( const String &  name)
inline

creates and add a ResourceProvider

Parameters
nameA String thats names the provider inside this holder.
Returns
Nothing.

◆ add() [4/4]

template<typename T >
void CEGUI::CompositeResourceProvider::add ( const String &  name)
inline

creates and add a ResourceProvider

Parameters
nameA String thats names the provider inside this holder.
Returns
Nothing.

◆ get() [1/2]

ResourceProvider * CEGUI::CompositeResourceProvider::get ( const String &  name)

get a ResourceProvider

Parameters
nameA String thats names the provider inside this holder.
Returns
ResourceProvider Pointer.

◆ get() [2/2]

ResourceProvider* CEGUI::CompositeResourceProvider::get ( const String &  name)

get a ResourceProvider

Parameters
nameA String thats names the provider inside this holder.
Returns
ResourceProvider Pointer.

◆ getResourceGroupFileNames() [1/2]

size_t CEGUI::CompositeResourceProvider::getResourceGroupFileNames ( std::vector< String > &  out_vec,
const String &  file_pattern,
const String &  resource_group 
)
virtual

enumerate the files in resource_group that match file_pattern and append thier names to out_vec

Implements CEGUI::ResourceProvider.

References CEGUI::ConstMapIterator< T >::getCurrentValue(), CEGUI::ConstBaseIterator< T, V >::isAtEnd(), and CEGUI::ConstBaseIterator< T, V >::toStart().

◆ getResourceGroupFileNames() [2/2]

size_t CEGUI::CompositeResourceProvider::getResourceGroupFileNames ( std::vector< String > &  out_vec,
const String &  file_pattern,
const String &  resource_group 
)
virtual

enumerate the files in resource_group that match file_pattern and append thier names to out_vec

Implements CEGUI::ResourceProvider.

◆ loadRawDataContainer() [1/2]

void CEGUI::CompositeResourceProvider::loadRawDataContainer ( const String &  filename,
RawDataContainer &  output,
const String &  resourceGroup 
)
virtual

Load XML data using InputSource objects.

Parameters
filenameString containing a filename of the resource to be loaded.
outputReference to a InputSourceContainer object to load the data into.

Load raw binary data.

Parameters
filenameString containing a filename of the resource to be loaded.
outputReference to a RawDataContainer object to load the data into.
resourceGroupOptional String that may be used by implementations to identify the group from which the resource should be loaded.

Implements CEGUI::ResourceProvider.

References CEGUI::String::empty(), CEGUI::ConstMapIterator< T >::getCurrentValue(), CEGUI::ConstBaseIterator< T, V >::isAtEnd(), and CEGUI::ConstBaseIterator< T, V >::toStart().

◆ loadRawDataContainer() [2/2]

void CEGUI::CompositeResourceProvider::loadRawDataContainer ( const String &  filename,
RawDataContainer &  output,
const String &  resourceGroup 
)
virtual

Load XML data using InputSource objects.

Parameters
filenameString containing a filename of the resource to be loaded.
outputReference to a InputSourceContainer object to load the data into.

Load raw binary data.

Parameters
filenameString containing a filename of the resource to be loaded.
outputReference to a RawDataContainer object to load the data into.
resourceGroupOptional String that may be used by implementations to identify the group from which the resource should be loaded.

Implements CEGUI::ResourceProvider.

◆ remove() [1/4]

void CEGUI::CompositeResourceProvider::remove ( ResourceProvider *  prov)

removes a ResourceProvider

Parameters
provA pointer to an ResourceProvider.
Returns
Nothing.

◆ remove() [2/4]

◆ remove() [3/4]

void CEGUI::CompositeResourceProvider::remove ( const String &  name)

removes a ResourceProvider

Parameters
nameA String thats names the provider inside this holder.
Returns
Nothing.

◆ remove() [4/4]

void CEGUI::CompositeResourceProvider::remove ( const String &  name)

removes a ResourceProvider

Parameters
nameA String thats names the provider inside this holder.
Returns
Nothing.