Definition
-
class HPS::Definition : public HPS::Object
The Definition class is a smart pointer to a database object. It is the base class for all definition objects.
Subclassed by HPS::CubeMapDefinition, HPS::GlyphDefinition, HPS::ImageDefinition, HPS::LegacyShaderDefinition, HPS::LinePatternDefinition, HPS::MaterialPaletteDefinition, HPS::NamedStyleDefinition, HPS::ShapeDefinition, HPS::TextureDefinition
Public Functions
-
virtual void Assign(Definition const &in_that)
Associate this Definition with the same underlying impl as the source Definition.
- Parameters
in_that – The source Definition for the assignment.
-
Definition()
The default constructor creates an uninitialized Definition object. The Type() function will return Type::None.
-
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.
- Parameters
in_that – An rvalue reference to a Definition to take the impl from.
-
Definition(Definition const &in_that)
The copy constructor creates a Definition object that shares the underlying smart-pointer of the source Definition.
- Parameters
in_that – The source Definition to copy.
-
bool Equals(Definition const &in_that) const
Check if the source Definition is equivalent to this Definition.
- Parameters
in_that – The source Definition to compare to this Definition.
- Returns
true if the objects are equivalent, false otherwise.
-
UTF8 Name() const
Get the name given to this Definition when it was defined.
- Returns
UTF8-encoded name of this Definition.
-
inline virtual HPS::Type ObjectType() const
This function returns the type the object, as declared (if the object is derived, this does not give the true type of the derived object).
- Returns
The declared type of the object in question, which may differ from the true, underlying type.
-
bool operator!=(Definition const &in_that) const
Check if the source Definition is not equivalent to this Definition.
- Parameters
in_that – The source Definition to compare to this Definition.
- Returns
true if the objects are not equivalent, false otherwise.
-
Definition &operator=(Definition &&in_that)
The move assignment operator transfers the underlying impl of the rvalue reference to this Definition thereby avoiding a copy.
- Parameters
in_that – An rvalue reference to a Definition to take the impl from.
- Returns
A reference to this Definition.
-
Definition &operator=(Definition const &in_that)
Associate this Definition with the same underlying impl as the source Definition.
- Parameters
in_that – The source Definition for the assignment.
- Returns
A reference to this Definition.
-
bool operator==(Definition const &in_that) const
Check if the source Definition is equivalent to this Definition.
- Parameters
in_that – The source Definition to compare to this Definition.
- Returns
true if the objects are equivalent, false otherwise.
-
PortfolioKey Owner() const
Get the portfolio that owns this Definition.
- Returns
The portfolio that owns this Definition.
-
void Undefine()
Removes this definition from the owning portfolio.
-
virtual ~Definition()
Public Static Attributes
-
static const HPS::Type staticType = HPS::Type::Definition
-
virtual void Assign(Definition const &in_that)