 |
Gorgon Game Engine
|
Go to the documentation of this file.
4 #include "../Graphics/MaskedObject.h"
7 namespace Gorgon {
namespace Resource {
101 throw std::runtime_error(
"Provider is not set.");
108 throw std::runtime_error(
"Provider is not set.");
115 throw std::runtime_error(
"Provider is not set.");
122 throw std::runtime_error(
"Provider is not set.");
129 throw std::runtime_error(
"Provider is not set.");
150 IMaskedObjectProvider *prov =
nullptr;
This class stores animations as a part of itself so that it can be moved around as a value rather tha...
Definition: Storage.h:21
constexpr Type File
File.
Definition: GID.h:84
virtual Geometry::Size GetSize() const override
Definition: MaskedObject.h:127
void AssumeProvider(Graphics::MaskedBitmapAnimationProvider &value)
Changes the provider stored in this masked object, ownership will be transferred.
Definition: MaskedObject.h:76
basic_MaskedObject< A_ > & CreateAnimation(bool create=true) const override
Definition: MaskedObject.h:151
Controllers are required to progress animations.
Definition: Animation.h:65
constexpr Type MaskedObject
Definition: GID.h:242
void RemoveProvider()
Removes the provider, if it is own by this resource it will be deleted.
Definition: MaskedObject.h:90
virtual Graphics::RectangularAnimation & CreateMask() const override
Definition: MaskedObject.h:106
void SetProvider(Graphics::MaskedObjectProvider &value)
Changes the provider stored in this masked object, ownership will not be transferred.
Definition: MaskedObject.h:63
IMaskedObjectProvider & MoveOutProvider() override
This function moves this animation provider into a new provider.
Definition: MaskedObject.cpp:199
static void SaveThis(Writer &writer, const Graphics::IMaskedObjectProvider &provider)
Definition: MaskedObject.cpp:141
virtual Graphics::RectangularAnimationStorage animmoveout() override
Definition: MaskedObject.cpp:195
void SetProvider(Graphics::MaskedBitmapAnimationProvider &value)
Changes the provider stored in this masked object, ownership will not be transferred.
Definition: MaskedObject.h:57
void save(Writer &writer) const override
Definition: MaskedObject.cpp:122
Root namespace for Gorgon Game Engine.
Definition: Any.h:19
This class represents a 2D geometric size.
Definition: Size.h:23
MaskedObject(Graphics::MaskedObjectProvider &&prov)
Creates a new masked object using another masked object provider.
Definition: MaskedObject.h:37
void SetProvider(Graphics::MaskedBitmapProvider &value)
Changes the provider stored in this masked object, ownership will not be transferred.
Definition: MaskedObject.h:51
This class denotes the resource is an image animation storage.
Definition: AnimationStorage.h:12
Rectangular drawable animation.
Definition: Animations.h:19
virtual Graphics::MaskedObject & CreateAnimation(Gorgon::Animation::ControllerBase &timer) const override
This function should create a new animation with the given controller and if owner parameter is set t...
Definition: MaskedObject.h:113
RectangularAnimation & CreateMask() const override
Creates a mask animation without controller.
Definition: MaskedObject.h:170
This object creates a masked object from two graphics object.
Definition: MaskedObject.h:109
RectangularAnimation & CreateBase() const override
Creates a base animation without controller.
Definition: MaskedObject.h:160
basic_MaskedObjectProvider< RectangularAnimationProvider > MaskedObjectProvider
Definition: MaskedObject.h:342
This class allows resource objects to save their data to a stream.
Definition: Writer.h:59
Geometry::Size GetSize() const override
Definition: MaskedObject.h:227
static MaskedObject * LoadResource(std::weak_ptr< File > file, std::shared_ptr< Reader > reader, unsigned long size)
This function loads a masked object resource from the file.
Definition: MaskedObject.cpp:37
MaskedObject(Graphics::MaskedBitmapProvider &&prov)
Creates a new masked object using another masked object provider.
Definition: MaskedObject.h:27
void AssumeProvider(Graphics::MaskedBitmapProvider &value)
Changes the provider stored in this masked object, ownership will be transferred.
Definition: MaskedObject.h:69
@ Graphics
Definition: Template.h:164
MaskedObject(Graphics::MaskedBitmapAnimationProvider &&prov)
Creates a new masked object using another masked object provider.
Definition: MaskedObject.h:32
basic_MaskedObjectProvider< BitmapAnimationProvider > MaskedBitmapAnimationProvider
Definition: MaskedObject.h:345
For ease of use in resource system.
Definition: MaskedObject.h:10
This is a masked object resource.
Definition: MaskedObject.h:15
Type to store GID information.
Definition: GID.h:23
basic_MaskedObjectProvider< Bitmap > MaskedBitmapProvider
Definition: MaskedObject.h:348
MaskedObject()
Creates a new empty masked object.
Definition: MaskedObject.h:42
GID::Type GetGID() const override
This function shall return Gorgon ID of this resource.
Definition: MaskedObject.h:46
virtual Graphics::RectangularAnimation & CreateBase() const override
Definition: MaskedObject.h:99
Definition: MaskedObject.h:22
void AssumeProvider(Graphics::MaskedObjectProvider &value)
Changes the provider stored in this masked object, ownership will be transferred.
Definition: MaskedObject.h:83
virtual Graphics::MaskedObject & CreateAnimation(bool create=true) const override
This function should create and animation and depending on the create parameter, it should create its...
Definition: MaskedObject.h:120