CeresEngine 0.2.0
A game development framework
Loading...
Searching...
No Matches
CeresEngine::PackagedResourceData Class Reference

A ResourceData sub-class that represents a resource owned and contained within a package. More...

#include <CeresEngine/Resource/Package.hpp>

Inheritance diagram for CeresEngine::PackagedResourceData:
CeresEngine::ResourceData CeresEngine::RefCounted< ResourceData >

Public Member Functions

 PackagedResourceData (Package &package) noexcept
 Creates a new PackagedResourceData instance.
 
 PackagedResourceData (Package &package, ResourceData &&existingData) noexcept
 Creates a new PackagedResourceData instance from an existing ResourceData.
 
- Public Member Functions inherited from CeresEngine::ResourceData
 ResourceData (ResourceManager &resourceManager) noexcept
 Creates a new ResourceData instance.
 
virtual ~ResourceData () noexcept=default
 ResourceData virtual destructor.
 
virtual ResourceStreamDatacreateStream (const ResourceStreamFlags &flags=ResourceStreamFlag::Default)=0
 Creates a new resource stream.
 
virtual ResourceStreamDataPtr getStream (const ResourceStreamID &streamID) const =0
 Gets a resource by it's stream ID.
 
virtual Vector< ResourceStreamDataPtrgetStreams () const =0
 Gets a list of streams that are owned by this resource.
 
virtual void destroyStream (ResourceStreamData &stream)=0
 Destroys a stream by ID.
 
- Public Member Functions inherited from CeresEngine::RefCounted< ResourceData >
 RefCounted (Args &&... args)
 Creates a new RefCounted object and constructs a new Deleter by forwarding Args to it.
 
void retain () noexcept
 Retains the object by increment it's reference count by one.
 
bool release () noexcept
 Relases the object by decrementing it's reference count by one.
 

Additional Inherited Members

- Public Attributes inherited from CeresEngine::ResourceData
ResourceManagermanager
 The resource manager that owns the resource.
 
const PackagePtr package = nullptr
 The package from which the resource was loaded from.
 
const ResourceID id = ResourceID::null
 The resource UUID, if registered with a resource manager.
 
const WeakResourceHandle< Resourcehandle = nullptr
 A weak handle to the resource.
 
const WeakResourceHandle< Resourceparent = nullptr
 A parent resource to which this resource is attached to.
 
SPtr< ResourceMetadatametadata = nullptr
 A pointer to the user-defined resource metadata.
 

Detailed Description

A ResourceData sub-class that represents a resource owned and contained within a package.

Constructor & Destructor Documentation

◆ PackagedResourceData() [1/2]

CeresEngine::PackagedResourceData::PackagedResourceData ( Package package)
explicitnoexcept

Creates a new PackagedResourceData instance.

Parameters
packageThe package instance that owns this resource data object.

◆ PackagedResourceData() [2/2]

CeresEngine::PackagedResourceData::PackagedResourceData ( Package package,
ResourceData &&  existingData 
)
explicitnoexcept

Creates a new PackagedResourceData instance from an existing ResourceData.

Parameters
packageThe package instance that owns this resource data object.
existingDataThe existing resource data to create a new instance for.

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