![]() |
Gorgon Game Engine
|
This is a tinted object resource. More...
Public Member Functions | |
ScalableObject () | |
Creates a new empty tinted object. More... | |
ScalableObject (Graphics::ScalableBitmapAnimationProvider &&prov) | |
Creates a new tinted object using another tinted object provider. More... | |
ScalableObject (Graphics::ScalableBitmapAnimationProvider &prov) | |
Creates a new tinted object using another tinted object provider. More... | |
ScalableObject (Graphics::ScalableBitmapProvider &&prov) | |
Creates a new tinted object using another tinted object provider. More... | |
ScalableObject (Graphics::ScalableBitmapProvider &prov) | |
Creates a new tinted object using another tinted object provider. More... | |
ScalableObject (Graphics::ScalableObjectProvider &&prov) | |
Creates a new tinted object using another tinted object provider. More... | |
ScalableObject (Graphics::ScalableObjectProvider &prov) | |
Creates a new tinted object using another tinted object provider. More... | |
void | AssumeProvider (Graphics::ScalableBitmapAnimationProvider &value) |
Changes the provider stored in this tinted object, ownership will be transferred. More... | |
void | AssumeProvider (Graphics::ScalableBitmapProvider &value) |
Changes the provider stored in this tinted object, ownership will be transferred. More... | |
void | AssumeProvider (Graphics::ScalableObjectProvider &value) |
Changes the provider stored in this tinted object, ownership will be transferred. More... | |
virtual Graphics::ScalableObject & | CreateAnimation (bool create=true) const override |
This function should create and animation and depending on the create parameter, it should create its own timer. More... | |
virtual Graphics::ScalableObject & | CreateAnimation (Gorgon::Animation::ControllerBase &timer) const override |
This function should create a new animation with the given controller and if owner parameter is set to true, it should assume ownership of the controller. More... | |
virtual Graphics::RectangularAnimation & | CreateBase () const override |
virtual Graphics::SizeController | GetController () const override |
GID::Type | GetGID () const override |
This function shall return Gorgon ID of this resource. More... | |
virtual Geometry::Size | GetSize () const override |
IScalableObjectProvider & | MoveOutProvider () override |
This function moves this animation provider into a new provider. More... | |
void | RemoveProvider () |
Removes the provider, if it is own by this resource it will be deleted. More... | |
virtual void | SetController (const Graphics::SizeController &value) override |
void | SetProvider (Graphics::ScalableBitmapAnimationProvider &value) |
Changes the provider stored in this tinted object, ownership will not be transferred. More... | |
void | SetProvider (Graphics::ScalableBitmapProvider &value) |
Changes the provider stored in this tinted object, ownership will not be transferred. More... | |
void | SetProvider (Graphics::ScalableObjectProvider &value) |
Changes the provider stored in this tinted object, ownership will not be transferred. More... | |
![]() | |
int | GetHeight () const |
int | GetWidth () const |
![]() | |
virtual | ~AnimationProvider () |
![]() | |
virtual | ~Provider () |
Virtual destructor. More... | |
![]() | |
Graphics::RectangularAnimationStorage | MoveOut () |
Moves this animation out as a generic value type animation. More... | |
![]() | |
Base () | |
Default constructor. More... | |
const Containers::Collection< Base >::ConstIterator | begin () const |
Allows easy iteration through range based fors. More... | |
const Containers::Collection< Base >::ConstIterator | cbegin () const |
Beginning of children. More... | |
const Containers::Collection< Base >::ConstIterator | cend () const |
End of children. More... | |
bool | DeleteResource () |
Safely deletes the resource. More... | |
virtual void | Discard () |
This function shall discard any transitional data which is not vital after Prepare function is issued. More... | |
const Containers::Collection< Base >::ConstIterator | end () const |
Allows easy iteration through range based fors. More... | |
virtual SGuid | GetGuid () const |
Returns the guid of the object. More... | |
const std::string & | GetName () const |
Returns the name of this object. More... | |
Base & | GetParent () const |
Returns the parent. If no parent set, this function throws std::runtime_error. More... | |
Base * | GetParentPtr () const |
Returns the pointer to the parent. This function may return nullptr. More... | |
const Base & | GetRoot () const |
Returns the root of this resource. More... | |
bool | HasParent () const |
Returns whether this object has a parent. More... | |
virtual bool | IsEqual (const SGuid &guid) const |
This function tests whether this object has the given SGuid. More... | |
virtual void | Prepare () |
This function shall prepare this resource to be used after resource is loaded. More... | |
virtual void | Resolve (File &file) |
This function shall resolve links or similar constructs. More... | |
void | Save (Writer &writer) |
Saves this object into the given writer. The writer should be open prior to this call. More... | |
virtual void | SetGuid (SGuid guid) |
Changes the guid of the object. More... | |
virtual void | SetName (const std::string &name) |
Sets the name of the object. More... | |
Static Public Member Functions | |
static ScalableObject * | LoadResource (std::weak_ptr< File > file, std::shared_ptr< Reader > reader, unsigned long size) |
This function loads a tinted object resource from the file. More... | |
static void | SaveThis (Writer &writer, const Graphics::IScalableObjectProvider &provider) |
Protected Member Functions | |
virtual Graphics::RectangularAnimationStorage | animmoveout () override |
void | save (Writer &writer) const override |
![]() | |
virtual | ~Base () |
Destructor, Always children gets destroyed first. More... | |
void | destroychildren () |
Destroys the children of this resource. More... | |
void | setparenttonullptr (Base &base) |
Sets the parent of an object to nullptr, provides access. More... | |
Additional Inherited Members | |
![]() | |
using | AnimationType = RectangularAnimation |
![]() | |
using | AnimationType = Animation |
![]() | |
using | AnimationType = Base |
![]() | |
const Containers::Collection< Base > & | Children |
The children this object have. More... | |
unsigned long | refcount |
INTERNAL, Reference count, used in linking mechanism. More... | |
![]() | |
Containers::Collection< Base > | children |
Child objects that this resource object have. More... | |
SGuid | guid |
SGuid to identify this resource object. More... | |
std::string | name |
Name of this resource object, may not be loaded. More... | |
Base * | parent |
Immediate parent of this resource. More... | |
const Base * | root |
Root of this resource. More... | |
This is a tinted object resource.
It stores a Graphics::ScalableObjectProvider or compatible types: Graphics::ScalableBitmapProvider and Graphics::ScalableBitmapAnimationProvider.
|
explicit |
Creates a new tinted object using another tinted object provider.
|
explicit |
Creates a new tinted object using another tinted object provider.
|
explicit |
Creates a new tinted object using another tinted object provider.
|
explicit |
Creates a new tinted object using another tinted object provider.
|
explicit |
Creates a new tinted object using another tinted object provider.
|
explicit |
Creates a new tinted object using another tinted object provider.
ScalableObject | ( | ) |
Creates a new empty tinted object.
|
overrideprotectedvirtual |
Implements AnimationStorage.
References ScalableObject::MoveOutProvider().
void AssumeProvider | ( | Graphics::ScalableBitmapAnimationProvider & | value | ) |
Changes the provider stored in this tinted object, ownership will be transferred.
References ScalableObject::RemoveProvider().
void AssumeProvider | ( | Graphics::ScalableBitmapProvider & | value | ) |
Changes the provider stored in this tinted object, ownership will be transferred.
References ScalableObject::RemoveProvider().
void AssumeProvider | ( | Graphics::ScalableObjectProvider & | value | ) |
Changes the provider stored in this tinted object, ownership will be transferred.
References ScalableObject::RemoveProvider().
|
overridevirtual |
This function should create and animation and depending on the create parameter, it should create its own timer.
Implements RectangularAnimationProvider.
References basic_ScalableObjectProvider< A_ >::CreateAnimation().
|
overridevirtual |
This function should create a new animation with the given controller and if owner parameter is set to true, it should assume ownership of the controller.
Implements RectangularAnimationProvider.
References basic_ScalableObjectProvider< A_ >::CreateAnimation().
|
overridevirtual |
Implements IScalableObjectProvider.
References basic_ScalableObjectProvider< A_ >::CreateBase().
|
overridevirtual |
Implements IScalableObjectProvider.
References basic_ScalableObjectProvider< A_ >::GetController().
|
overridevirtual |
This function shall return Gorgon ID of this resource.
Implements Base.
References Gorgon::Resource::GID::ScalableObject.
|
overridevirtual |
Implements RectangularAnimationProvider.
References basic_ScalableObjectProvider< A_ >::GetSize().
|
static |
This function loads a tinted object resource from the file.
References ScalableObject::ScalableObject().
|
overridevirtual |
This function moves this animation provider into a new provider.
Ownership of this new object belongs to the caller and this object could be destroyed safely.
Implements IScalableObjectProvider.
References Base::children.
void RemoveProvider | ( | ) |
Removes the provider, if it is own by this resource it will be deleted.
|
overrideprotectedvirtual |
Implements Base.
References Writer::WriteEnd(), and Writer::WriteObjectStart().
|
static |
References Gorgon::Resource::GID::ScalableObject, Writer::WriteChunkStart(), and Writer::WriteEnd().
|
overridevirtual |
Implements IScalableObjectProvider.
References basic_ScalableObjectProvider< A_ >::SetController().
void SetProvider | ( | Graphics::ScalableBitmapAnimationProvider & | value | ) |
Changes the provider stored in this tinted object, ownership will not be transferred.
References ScalableObject::RemoveProvider().
void SetProvider | ( | Graphics::ScalableBitmapProvider & | value | ) |
Changes the provider stored in this tinted object, ownership will not be transferred.
References ScalableObject::RemoveProvider().
void SetProvider | ( | Graphics::ScalableObjectProvider & | value | ) |
Changes the provider stored in this tinted object, ownership will not be transferred.
References ScalableObject::RemoveProvider().