ShapeDefinition

class ShapeDefinition : public HPS::Definition

The ShapeDefinition class is a smart pointer to a database object. It is a handle to a shape defined within a portfolio.

Public Functions

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.
ShapeDefinition &operator=(ShapeDefinition &&in_that)

The move assignment operator transfers the underlying impl of the rvalue reference to this ShapeDefinition thereby avoiding a copy.

Parameters:in_that – An rvalue reference to a ShapeDefinition to take the impl from.
Returns:A reference to this ShapeDefinition.
ShapeDefinition &operator=(ShapeDefinition const &in_that)

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

Parameters:in_that – The source ShapeDefinition for the assignment.
Returns:A reference to this ShapeDefinition.
void Set(ShapeKit const &in_kit)

Redefine the shape for this ShapeDefinition.

Parameters:in_kit – The new shader for this ShapeDefinition.
ShapeDefinition()

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

ShapeDefinition(Definition const &in_that)

This constructor creates a ShapeDefinition object that shares the underlying smart-pointer of the source Definition. The copy will only be successful if the source definition is really an upcast of a shader definition. Otherwise the copy will fail and the resulting ShapeDefinition will be invalid.

Parameters:in_that – The source Definition to copy.
ShapeDefinition(ShapeDefinition &&in_that)

The move constructor creates a ShapeDefinition by transferring the underlying impl of the rvalue reference to this ShapeDefinition thereby avoiding a copy and allocation.

Parameters:in_that – An rvalue reference to a ShapeDefinition to take the impl from.
ShapeDefinition(ShapeDefinition const &in_that)

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

Parameters:in_that – The source ShapeDefinition to copy.
void Show(ShapeKit &out_kit) const

Shows the shape for this ShapeDefinition.

Parameters:out_kit – The shape for this ShapeDefinition.
~ShapeDefinition()

Public Static Attributes

static const HPS::Type staticType = HPS::Type::ShapeDefinition