Oxygine  1
2g game engine
Classes | Public Types | Public Member Functions | Static Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | Static Protected Attributes | List of all members
oxygine::Resources Class Reference
Inheritance diagram for oxygine::Resources:
oxygine::Resource oxygine::Object oxygine::ref_counter oxygine::ObjectBase oxygine::PoolObject


struct  registeredResource

Public Types

typedef std::vector< spResource > resources
typedef std::unordered_map< std::string, spResource > resourcesMap
typedef Resource *(* createResourceCallback) (CreateResourceContext &context)
typedef Closure< void(Resource *)> ResLoadedCallback
- Public Types inherited from oxygine::ObjectBase
typedef std::vector< ObjectBase * > __createdObjects

Public Member Functions

bool loadXML (const std::string &xmlFile, const ResourcesLoadOptions &opt=ResourcesLoadOptions())
void add (Resource *r, bool accessByShortenID=false)
void load (ResLoadedCallback cb=ResLoadedCallback())
void unload ()
void free ()
bool isEmpty () const
Resourceget (const std::string &id, error_policy ep=ep_show_error) const
Resourceoperator[] (const std::string &id)
ResAnimgetResAnim (const std::string &id, error_policy ep=ep_show_error) const
ResFontgetResFont (const std::string &id, error_policy ep=ep_show_error) const
template<class T >
T * getT (const std::string &id, error_policy ep=ep_show_error) const
void print () const
void collect (resources &)
resources & _getResources ()
resourcesMap & _getResourcesMap ()
- Public Member Functions inherited from oxygine::Resource
void load (LoadResourcesContext *context=0)
void unload ()
pugi::xml_attribute getAttribute (const char *attr) const
pugi::xml_node getNode () const
bool getUseLoadCounter () const
ResourcegetParent () const
void setUseLoadCounter (bool v)
void setParent (Resource *p)
- Public Member Functions inherited from oxygine::Object
 Object (const Object &src)
 Object (bool assignUniqueID=true)
- Public Member Functions inherited from oxygine::ref_counter
void addRef ()
void releaseRef ()
- Public Member Functions inherited from oxygine::ObjectBase
 ObjectBase (const ObjectBase &src)
 ObjectBase (bool assignID=true)
const std::string & getName () const
const void * getUserData () const
int getObjectID () const
bool isName (const std::string &name) const
bool isName (const char *name) const
void setName (const std::string &name)
void setUserData (const void *data)
void dumpObject () const
void __removeFromDebugList ()

Static Public Member Functions

static void registerResourceType (createResourceCallback creationCallback, const char *resTypeID)
static void unregisterResourceType (const char *resTypeID)
- Static Public Member Functions inherited from oxygine::Resource
static std::string extractID (const pugi::xml_node &node, const std::string &file, const std::string &def)
static std::string extractID (const std::string &file)
- Static Public Member Functions inherited from oxygine::ObjectBase
static void dumpCreatedObjects ()
static void showAssertInCtor (int id)
static void showAssertInDtor (int id)
static __createdObjects & __getCreatedObjects ()
static void __startTracingLeaks ()
static void __stopTracingLeaks ()

Protected Types

typedef std::vector< registeredResourceregisteredResources

Protected Member Functions

void updateName (const std::string &filename)
void _load (LoadResourcesContext *context) override
void _unload () override
- Protected Member Functions inherited from oxygine::Object
void __doCheck ()
- Protected Member Functions inherited from oxygine::ObjectBase
void __generateID ()
std::string * __getName () const
void __freeName () const

Protected Attributes

resources _resources
resourcesMap _resourcesMap
std::string _name
std::vector< pugi::xml_document * > _docs
- Protected Attributes inherited from oxygine::Resource
int _loadCounter
bool _useLoadCounter
pugi::xml_node _node
- Protected Attributes inherited from oxygine::ObjectBase
std::string __name
int __id
const void * __userData

Static Protected Attributes

static registeredResources _registeredResources
- Static Protected Attributes inherited from oxygine::ObjectBase
static int _lastID
static int _assertCtorID
static int _assertDtorID

Additional Inherited Members

- Public Attributes inherited from oxygine::ref_counter
int _ref_counter
- Static Protected Member Functions inherited from oxygine::Resource
static void setNode (Resource *res, const pugi::xml_node &node)
- Static Protected Member Functions inherited from oxygine::ObjectBase
static void __addToDebugList (ObjectBase *base)
static void __removeFromDebugList (ObjectBase *base)

Member Function Documentation

◆ add()

void oxygine::Resources::add ( Resource r,
bool  accessByShortenID = false 

Adds Resource

◆ collect()

void oxygine::Resources::collect ( resources &  )

collects all resources into vector

◆ free()

void oxygine::Resources::free ( )

Completely deletes all loaded resources

◆ get()

Resource* oxygine::Resources::get ( const std::string &  id,
error_policy  ep = ep_show_error 
) const

get resource by id, no case sensitive


◆ getResAnim()

ResAnim* oxygine::Resources::getResAnim ( const std::string &  id,
error_policy  ep = ep_show_error 
) const

get resource by id


◆ getResFont()

ResFont* oxygine::Resources::getResFont ( const std::string &  id,
error_policy  ep = ep_show_error 
) const

get animation resource by id


◆ isEmpty()

bool oxygine::Resources::isEmpty ( ) const

Does it have any loaded xmls

◆ load()

void oxygine::Resources::load ( ResLoadedCallback  cb = ResLoadedCallback())

Calls Resource::load for each resource in the list

◆ loadXML()

bool oxygine::Resources::loadXML ( const std::string &  xmlFile,
const ResourcesLoadOptions opt = ResourcesLoadOptions() 

Loads resources from xml file. Load could be called multiple times for different xml files.

xmlfile paths

◆ operator[]()

Resource* oxygine::Resources::operator[] ( const std::string &  id)

returns resource by index

◆ print()

void oxygine::Resources::print ( ) const

debug function. prints all loaded resources

◆ registerResourceType()

static void oxygine::Resources::registerResourceType ( createResourceCallback  creationCallback,
const char *  resTypeID 

Registers your own resource type.

resourcetype string identifier. Max id length is 15 chars. These IDs are already occupied: 'set', 'atlas', ' image', 'font', 'buffer'

◆ unload()

void oxygine::Resources::unload ( )

Unloads data from memory, all resources handles remain valid

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