![]() |
Gorgon Game Engine
|
This is a line resource, it stores a Graphics::LineProvider. More...
Public Member Functions | |
Line () | |
Creates a new empty line. More... | |
Line (Graphics::AnimatedBitmapLineProvider &&prov) | |
Creates a new line using another line provider. More... | |
Line (Graphics::AnimatedBitmapLineProvider &prov) | |
Creates a new line using another line provider. More... | |
Line (Graphics::BitmapLineProvider &&prov) | |
Creates a new line using another line provider. More... | |
Line (Graphics::BitmapLineProvider &prov) | |
Creates a new line using another line provider. More... | |
Line (Graphics::LineProvider &&prov) | |
Creates a new line using another line provider. More... | |
Line (Graphics::LineProvider &prov) | |
Creates a new line using another line provider. More... | |
void | AssumeProvider (Graphics::AnimatedBitmapLineProvider &value) |
Changes the provider stored in this line, ownership will be transferred. More... | |
void | AssumeProvider (Graphics::BitmapLineProvider &value) |
Changes the provider stored in this line, ownership will be transferred. More... | |
void | AssumeProvider (Graphics::LineProvider &value) |
Changes the provider stored in this line, ownership will be transferred. More... | |
virtual Gorgon::Graphics::Line & | 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 Gorgon::Graphics::Line & | 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 & | CreateEnd () const override |
Creates a start animation without controller. This function should always return an animation. More... | |
virtual Graphics::RectangularAnimation & | CreateMiddle () const override |
Creates a start animation without controller. This function should always return an animation. More... | |
virtual Graphics::RectangularAnimation & | CreateStart () const override |
Creates a start animation without controller. This function should always return an animation. More... | |
GID::Type | GetGID () const override |
This function shall return Gorgon ID of this resource. More... | |
virtual Graphics::Orientation | GetOrientation () const override |
Returns the orientation of the line provider. More... | |
virtual Geometry::Size | GetSize () const override |
virtual bool | GetTiling () const override |
Returns if the middle part will be tiled. More... | |
ILineProvider & | MoveOutProvider () override |
This function moves this animation provider into a new provider. More... | |
void | RemoveProvider () |
Removes the provider, if it is owned by this resource it will be deleted. More... | |
virtual void | SetOrientation (Graphics::Orientation value) override |
Changes the orientation of the provider. More... | |
void | SetProvider (Graphics::AnimatedBitmapLineProvider &value) |
Changes the provider stored in this line, ownership will not be transferred. More... | |
void | SetProvider (Graphics::BitmapLineProvider &value) |
Changes the provider stored in this line, ownership will not be transferred. More... | |
void | SetProvider (Graphics::LineProvider &value) |
Changes the provider stored in this line, ownership will not be transferred. More... | |
virtual void | SetTiling (bool value) override |
Sets whether the middle part would be tiled. More... | |
![]() | |
ILineProvider (Orientation orientation) | |
![]() | |
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 Line * | LoadResource (std::weak_ptr< File > file, std::shared_ptr< Reader > reader, unsigned long size) |
This function loads a line resource from the file. More... | |
static void | SaveThis (Writer &writer, const Graphics::ILineProvider &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 line resource, it stores a Graphics::LineProvider.
This resource can work with Graphics::LineProvider, Graphics::BitmapLineProvider and Graphics::AnimatedBitmapLineProvider.
|
explicit |
Creates a new line using another line provider.
|
explicit |
Creates a new line using another line provider.
|
explicit |
Creates a new line using another line provider.
|
explicit |
Creates a new line using another line provider.
|
explicit |
Creates a new line using another line provider.
|
explicit |
Creates a new line using another line provider.
Line | ( | ) |
Creates a new empty line.
|
overrideprotectedvirtual |
Implements AnimationStorage.
References Line::MoveOutProvider().
void AssumeProvider | ( | Graphics::AnimatedBitmapLineProvider & | value | ) |
Changes the provider stored in this line, ownership will be transferred.
References Line::RemoveProvider().
void AssumeProvider | ( | Graphics::BitmapLineProvider & | value | ) |
Changes the provider stored in this line, ownership will be transferred.
References Line::RemoveProvider().
void AssumeProvider | ( | Graphics::LineProvider & | value | ) |
Changes the provider stored in this line, ownership will be transferred.
References Line::RemoveProvider().
|
overridevirtual |
This function should create and animation and depending on the create parameter, it should create its own timer.
Implements RectangularAnimationProvider.
References basic_LineProvider< 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_LineProvider< A_ >::CreateAnimation().
|
overridevirtual |
Creates a start animation without controller. This function should always return an animation.
Implements ILineProvider.
References basic_LineProvider< A_ >::CreateEnd().
|
overridevirtual |
Creates a start animation without controller. This function should always return an animation.
Implements ILineProvider.
References basic_LineProvider< A_ >::CreateMiddle().
|
overridevirtual |
Creates a start animation without controller. This function should always return an animation.
Implements ILineProvider.
References basic_LineProvider< A_ >::CreateStart().
|
overridevirtual |
This function shall return Gorgon ID of this resource.
Implements Base.
References Gorgon::Resource::GID::Line.
|
overridevirtual |
Returns the orientation of the line provider.
Reimplemented from ILineProvider.
References ILineProvider::GetOrientation().
|
overridevirtual |
Implements RectangularAnimationProvider.
References basic_LineProvider< A_ >::GetSize().
|
overridevirtual |
Returns if the middle part will be tiled.
Reimplemented from ILineProvider.
References ILineProvider::GetTiling().
|
static |
This function loads a line resource from the file.
References Line::Line().
|
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 ILineProvider.
References ILineProvider::ILineProvider(), and Base::children.
void RemoveProvider | ( | ) |
Removes the provider, if it is owned by this resource it will be deleted.
|
overrideprotectedvirtual |
Implements Base.
References Writer::WriteEnd(), and Writer::WriteObjectStart().
|
static |
References Gorgon::Resource::GID::Line, Writer::WriteChunkStart(), and Writer::WriteEnd().
|
overridevirtual |
Changes the orientation of the provider.
Instances will require redrawing before this change is reflected.
Reimplemented from ILineProvider.
References ILineProvider::SetOrientation().
void SetProvider | ( | Graphics::AnimatedBitmapLineProvider & | value | ) |
Changes the provider stored in this line, ownership will not be transferred.
References Line::RemoveProvider().
void SetProvider | ( | Graphics::BitmapLineProvider & | value | ) |
Changes the provider stored in this line, ownership will not be transferred.
References Line::RemoveProvider().
void SetProvider | ( | Graphics::LineProvider & | value | ) |
Changes the provider stored in this line, ownership will not be transferred.
References Line::RemoveProvider().
|
overridevirtual |
Sets whether the middle part would be tiled.
If set to false it will be stretched to fit the given area. Instances will require redrawing before this change is reflected. Tiling is recommended for all applications.
Reimplemented from ILineProvider.
References ILineProvider::SetTiling().