PerformanceControl

class HPS::PerformanceControl : public HPS::Control

The HPS::PerformanceControl class is a smart pointer that is tied to a database object. This object is used to enable and disable performance-related attributes, such as display lists and static model.

This table lists default values for the various segment attributes accessible from HPS::PerformanceControl.

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.

PerformanceControl &operator=(PerformanceControl &&in_that)

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

Parameters

in_that – An rvalue reference to a PerformanceControl to take the impl from.

Returns

A reference to this PerformanceControl.

PerformanceControl &operator=(PerformanceControl const &in_that)

Share the underlying smart-pointer of the PerformanceControl source.

Parameters

in_that – The PerformanceControl source of the assignment.

Returns

A reference to this PerformanceControl.

PerformanceControl(PerformanceControl &&in_that)

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

Parameters

in_that – An rvalue reference to a PerformanceControl to take the impl from.

PerformanceControl(PerformanceControl const &in_that)

Initializes a control tied to the same object as in_that.

explicit PerformanceControl(SegmentKey &in_seg)

Initializes a control tied to the segment in_seg.

PerformanceControl &SetDisplayLists(Performance::DisplayLists in_display_list = Performance::DisplayLists::Segment)

Sets the display list state. Display lists enables the drivers to cache data in video card memory for improved rendering performance.

Parameters

in_display_list – The type of display lists, if any, that should be used.

Returns

A reference to this object.

PerformanceControl &SetStaticConditions(Performance::StaticConditions in_conditions)

Sets the mode for processing conditional expressions inn a static tree.

Parameters

in_conditions – The type of conditional processing that should be used.

Returns

A reference to this object.

PerformanceControl &SetStaticModel(Performance::StaticModel in_model_type)

Sets the static tree state. This will create a compiled draw tree for the scene which should result in better rendering performance. It is important to note that the compiled tree will need to be regenerated if a change occurs within the segment tree.

Parameters

in_model_type – The type of static tree, if any, that should be used.

Returns

A reference to this object.

PerformanceControl &SetTextHardwareAcceleration(bool in_state)

Sets text hardware acceleration. Transformable text may be included if segment-level display lists are active.

Parameters

in_state – Whether to include transformable text in segment-level display lists

Returns

A reference to this object.

bool ShowDisplayLists(Performance::DisplayLists &out_display_list) const

Shows the display list state.

Parameters

out_display_list – The type of display lists, if any.

Returns

true if the setting is valid, false otherwise.

bool ShowStaticConditions(Performance::StaticConditions &out_conditions) const

Shows the static conditions state.

Parameters

out_conditions – The type of conditional expression processing

Returns

true if the setting is valid, false otherwise.

bool ShowStaticModel(Performance::StaticModel &out_model_type) const

Shows the static model state.

Parameters

out_model_type – The type of static tree, if any

Returns

true if the setting is valid, false otherwise.

bool ShowTextHardwareAcceleration(bool &out_state) const

Shows the text hardware acceleration state.

Parameters

out_state – The text hardware acceleration setting, if any.

Returns

true if the setting is valid, false otherwise.

PerformanceControl &UnsetDisplayLists()

Removes the display list setting. If the control is attached to a WindowKey this function restores the default value of this setting as specified by PerformanceKit::GetDefault().

Returns

A reference to this object.

PerformanceControl &UnsetEverything()

Removes all settings from this object. If the control is attached to a WindowKey this function restores the default settings of this control as specified by PerformanceKit::GetDefault().

Returns

A reference to this object.

PerformanceControl &UnsetStaticConditions()

Removes the static condition state. setting as specified by PerformanceKit::GetDefault().

Returns

A reference to this object.

PerformanceControl &UnsetStaticModel()

Removes the static model state, releasing the compiled draw tree. If the control is attached to a WindowKey this function restores the default value of this setting as specified by PerformanceKit::GetDefault().

Returns

A reference to this object.

PerformanceControl &UnsetTextHardwareAcceleration()

Removes the text hardware acceleration setting. If the control is attached to a WindowKey this function restores the default value of this setting as specified by PerformanceKit::GetDefault().

Returns

A reference to this object.

~PerformanceControl()

Releases a reference to the database object this control is tied to.

Public Static Attributes

static const HPS::Type staticType = HPS::Type::PerformanceControl