#include <hps.h>
Public Member Functions | |
Definition () | |
Definition (Definition const &in_that) | |
Definition & | operator= (Definition const &in_that) |
Definition (Definition &&in_that) | |
Definition & | operator= (Definition &&in_that) |
HPS::Type | ObjectType () const |
void | Undefine () |
PortfolioKey | Owner () const |
UTF8 | Name () const |
virtual void | Assign (Definition const &in_that) |
bool | Equals (Definition const &in_that) const |
bool | operator== (Definition const &in_that) const |
bool | operator!= (Definition const &in_that) const |
![]() | |
Object & | operator= (Object const &other_object) |
Object (Object &&in_that) | |
Object & | operator= (Object &&in_that) |
HPS::Type | Type () const |
virtual bool | Empty () const |
virtual void | Reset () |
bool | HasType (HPS::Type in_mask) const |
intptr_t | GetClassID () const |
intptr_t | GetInstanceID () const |
Additional Inherited Members | |
![]() | |
template<typename T > | |
static intptr_t | ClassID () |
The Definition class is a smart pointer to a database object. It is the base class for all definition objects.
HPS::Definition::Definition | ( | ) |
The default constructor creates an uninitialized Definition object. The Type() function will return Type::None.
HPS::Definition::Definition | ( | Definition const & | in_that | ) |
The copy constructor creates a Definition object that shares the underlying smart-pointer of the source Definition.
in_that | The source Definition to copy. |
HPS::Definition::Definition | ( | Definition && | in_that | ) |
The move constructor creates a Definition by transferring the underlying impl of the rvalue reference to this Definition thereby avoiding a copy and allocation.
in_that | An rvalue reference to a Definition to take the impl from. |
|
virtual |
Associate this Definition with the same underlying impl as the source Definition.
in_that | The source Definition for the assignment. |
bool HPS::Definition::Equals | ( | Definition const & | in_that | ) | const |
Check if the source Definition is equivalent to this Definition.
in_that | The source Definition to compare to this Definition. |
UTF8 HPS::Definition::Name | ( | ) | const |
Get the name given to this Definition when it was defined.
|
inlinevirtual |
This function returns the type the object, as declared. This does not necessarily give the true type of the underlying object.
Reimplemented from HPS::Object.
Reimplemented in HPS::ShaderDefinition, HPS::LinePatternDefinition, HPS::MaterialPaletteDefinition, HPS::NamedStyleDefinition, HPS::CubeMapDefinition, HPS::ImageDefinition, HPS::TextureDefinition, and HPS::GlyphDefinition.
bool HPS::Definition::operator!= | ( | Definition const & | in_that | ) | const |
Check if the source Definition is not equivalent to this Definition.
in_that | The source Definition to compare to this Definition. |
Definition& HPS::Definition::operator= | ( | Definition const & | in_that | ) |
Associate this Definition with the same underlying impl as the source Definition.
in_that | The source Definition for the assignment. |
Definition& HPS::Definition::operator= | ( | Definition && | in_that | ) |
The move assignment operator transfers the underlying impl of the rvalue reference to this Definition thereby avoiding a copy.
in_that | An rvalue reference to a Definition to take the impl from. |
bool HPS::Definition::operator== | ( | Definition const & | in_that | ) | const |
Check if the source Definition is equivalent to this Definition.
in_that | The source Definition to compare to this Definition. |
PortfolioKey HPS::Definition::Owner | ( | ) | const |
Get the portfolio that owns this Definition.
void HPS::Definition::Undefine | ( | ) |
Removes this definition from the owning portfolio.