#include <hps.h>

Inheritance diagram for HPS::Definition:
HPS::Object HPS::CubeMapDefinition HPS::GlyphDefinition HPS::ImageDefinition HPS::LinePatternDefinition HPS::MaterialPaletteDefinition HPS::NamedStyleDefinition HPS::ShapeDefinition HPS::TextureDefinition

Public Member Functions

virtual void Assign (Definition const &in_that)
 
 Definition ()
 
 Definition (Definition const &in_that)
 
 Definition (Definition &&in_that)
 
bool Equals (Definition const &in_that) const
 
UTF8 Name () const
 
HPS::Type ObjectType () const
 
bool operator!= (Definition const &in_that) const
 
Definitionoperator= (Definition const &in_that)
 
Definitionoperator= (Definition &&in_that)
 
bool operator== (Definition const &in_that) const
 
PortfolioKey Owner () const
 
void Undefine ()
 
- Public Member Functions inherited from HPS::Object
virtual bool Empty () const
 
intptr_t GetClassID () const
 
intptr_t GetInstanceID () const
 
bool HasType (HPS::Type in_mask) const
 
Object (Object const &that)
 
 Object (Object &&in_that)
 
Objectoperator= (Object const &other_object)
 
Objectoperator= (Object &&in_that)
 
virtual void Reset ()
 
virtual HPS::Type Type () const
 

Static Public Attributes

static const HPS::Type staticType = HPS::Type::Definition
 
- Static Public Attributes inherited from HPS::Object
static const HPS::Type staticType = HPS::Type::None
 

Additional Inherited Members

- Static Public Member Functions inherited from HPS::Object
template<typename T >
static intptr_t ClassID ()
 

Detailed Description

The Definition class is a smart pointer to a database object. It is the base class for all definition objects.

Constructor & Destructor Documentation

◆ Definition() [1/3]

HPS::Definition::Definition ( )

The default constructor creates an uninitialized Definition object. The Type() function will return Type::None.

◆ Definition() [2/3]

HPS::Definition::Definition ( Definition const &  in_that)

The copy constructor creates a Definition object that shares the underlying smart-pointer of the source Definition.

Parameters
in_thatThe source Definition to copy.

◆ Definition() [3/3]

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.

Parameters
in_thatAn rvalue reference to a Definition to take the impl from.

Member Function Documentation

◆ Assign()

virtual void HPS::Definition::Assign ( Definition const &  in_that)
virtual

Associate this Definition with the same underlying impl as the source Definition.

Parameters
in_thatThe source Definition for the assignment.

◆ Equals()

bool HPS::Definition::Equals ( Definition const &  in_that) const

Check if the source Definition is equivalent to this Definition.

Parameters
in_thatThe source Definition to compare to this Definition.
Returns
true if the objects are equivalent, false otherwise.

◆ Name()

UTF8 HPS::Definition::Name ( ) const

Get the name given to this Definition when it was defined.

Returns
UTF8-encoded name of this Definition.

◆ ObjectType()

HPS::Type HPS::Definition::ObjectType ( ) const
inlinevirtual

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.

Reimplemented from HPS::Object.

Reimplemented in HPS::ShapeDefinition, HPS::LinePatternDefinition, HPS::MaterialPaletteDefinition, HPS::NamedStyleDefinition, HPS::CubeMapDefinition, HPS::ImageDefinition, HPS::TextureDefinition, and HPS::GlyphDefinition.

◆ operator!=()

bool HPS::Definition::operator!= ( Definition const &  in_that) const

Check if the source Definition is not equivalent to this Definition.

Parameters
in_thatThe source Definition to compare to this Definition.
Returns
true if the objects are not equivalent, false otherwise.

◆ operator=() [1/2]

Definition& HPS::Definition::operator= ( Definition const &  in_that)

Associate this Definition with the same underlying impl as the source Definition.

Parameters
in_thatThe source Definition for the assignment.
Returns
A reference to this Definition.

◆ operator=() [2/2]

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.

Parameters
in_thatAn rvalue reference to a Definition to take the impl from.
Returns
A reference to this Definition.

◆ operator==()

bool HPS::Definition::operator== ( Definition const &  in_that) const

Check if the source Definition is equivalent to this Definition.

Parameters
in_thatThe source Definition to compare to this Definition.
Returns
true if the objects are equivalent, false otherwise.

◆ Owner()

PortfolioKey HPS::Definition::Owner ( ) const

Get the portfolio that owns this Definition.

Returns
The portfolio that owns this Definition.

◆ Undefine()

void HPS::Definition::Undefine ( )

Removes this definition from the owning portfolio.


The documentation for this class was generated from the following file: