CoreComponents 4.0.0
A Modern C++ Toolkit
Loading...
Searching...
No Matches
ResourceManager Class Referencefinal

Keep track of application resource directories. More...

#include <cc/ResourceManager>

Inheritance diagram for ResourceManager:

Public Member Functions

 ResourceManager ()
 Get access to the resource manager singleton.
ResourceManageraddDirectory (const String &realPrefix, const String &resourcePrefix="")
 Add directory for resource lookups.
bool lookup (const String &resourcePath, Out< String > realPath) const
 Map a resource path to the absolute file system path.
String realPath (const String &resourcePath) const
 Convenience function: map resourcePath to a file system path.
Public Member Functions inherited from Object
 Object ()=default
 Create a null object.
 operator bool () const
 Check if this is a non-null object.
bool isNull () const
 Check if this is a null object.
int useCount () const
 Reference count.
template<class T>
bool is () const
 Check if this object is of type T.
template<class T>
as () const
 Cast this object to type T.
bool isWeak () const
 Check if the underlying object reference is weak.
bool operator== (const Object &other) const
 Equality operator.
std::strong_ordering operator<=> (const Object &other) const
 Ordering operator.

Additional Inherited Members

Public Types inherited from Object
using NullAccess = cc::NullAccess
 Error thrown when trying to access a null object.
using VirginityTestFailed = cc::VirginityTestFailed
 Error thrown when trying to initialize an object with a non-virgin state.
Protected Member Functions inherited from Singleton
 Singleton ()=default
 Create a null singleton.
 Singleton (State *state)
 Initialize singleton object with instance state.
Protected Member Functions inherited from Object
template<class T>
weak () const
template<class T>
void initOnce ()
 Create the object state when called the first time.
template<class T>
void initOncePerThread ()
 Create a distinct object state for each thread when called the first time in that thread.
 Object (State *newState)
 Initialize object with newState.
 Object (State *state, Alias)
 Object (State *state, Weak)
Objectoperator= (std::nullptr_t)
Static Protected Member Functions inherited from Singleton
template<class T>
static Handle< T > & handle ()
template<class T>
static void destroy ()
template<class T>
static T * instance ()
 Get access to the singleton instance.
Static Protected Member Functions inherited from Object
template<class T>
static T alias (const State *state)
 Create an alias object for the given state.
template<class T>
static T weak (const State *state)
Protected Attributes inherited from Object
Handle< Stateme
 Internal object state

Detailed Description

Keep track of application resource directories.

Constructor & Destructor Documentation

◆ ResourceManager()

ResourceManager ( )

Get access to the resource manager singleton.

Member Function Documentation

◆ addDirectory()

ResourceManager & addDirectory ( const String & realPrefix,
const String & resourcePrefix = "" )

Add directory for resource lookups.

Parameters
realPrefixAbsolute file system directory path
resourcePrefixVirtual resource path (defaults to top-level component of realPrefix)
Note
It is possible to override an existing resource prefix.

◆ lookup()

bool lookup ( const String & resourcePath,
Out< String > realPath ) const

Map a resource path to the absolute file system path.

Parameters
resourcePathResource path (e.g. ":/icons/app.webp")
realPathReturns the absolute file system path
Returns
True if a matching resource directory was found.

◆ realPath()

String realPath ( const String & resourcePath) const

Convenience function: map resourcePath to a file system path.