SegmentOptimizationOptionsKit

class HPS::SegmentOptimizationOptionsKit : public HPS::Kit

Configuration options kit for controlling HPS::Segment::Optimize behavior.

Public Functions

void Consume(SegmentOptimizationOptionsKit &in_kit)

Copies the source SegmentOptimizationOptionsKit into this SegmentOptimizationOptionsKit and resets the source kit.

Parameters

in_kit – The source SegmentOptimizationOptionsKit to consume.

virtual bool Empty() const

Indicates whether this SegmentOptimizationOptionsKit has any values set on it.

Returns

true if no values are set on this SegmentOptimizationOptionsKit, false otherwise.

bool Equals(SegmentOptimizationOptionsKit const &in_kit) const

Check if the source SegmentOptimizationOptionsKit is equivalent to this SegmentOptimizationOptionsKit.

Parameters

in_kit – The source SegmentOptimizationOptionsKit to compare to this SegmentOptimizationOptionsKit.

Returns

true if the objects are equivalent, false otherwise.

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!=(SegmentOptimizationOptionsKit const &in_kit) const

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

Parameters

in_kit – The source SegmentOptimizationOptionsKit to compare to this SegmentOptimizationOptionsKit.

Returns

true if the objects are not equivalent, false otherwise.

SegmentOptimizationOptionsKit &operator=(SegmentOptimizationOptionsKit &&in_kit)

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

Parameters

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

Returns

A reference to this SegmentOptimizationOptionsKit.

SegmentOptimizationOptionsKit &operator=(SegmentOptimizationOptionsKit const &in_kit)

Copies the source SegmentOptimizationOptionsKit into this SegmentOptimizationOptionsKit.

Parameters

in_kit – The source SegmentOptimizationOptionsKit to copy.

Returns

A reference to this SegmentOptimizationOptionsKit.

bool operator==(SegmentOptimizationOptionsKit const &in_kit) const

Check if the source SegmentOptimizationOptionsKit is equivalent to this SegmentOptimizationOptionsKit.

Parameters

in_kit – The source SegmentOptimizationOptionsKit to compare to this SegmentOptimizationOptionsKit.

Returns

true if the objects are equivalent, false otherwise.

SegmentOptimizationOptionsKit()

The default constructor creates an empty SegmentOptimizationOptionsKit object.

SegmentOptimizationOptionsKit(SegmentOptimizationOptionsKit &&in_kit)

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

Parameters

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

SegmentOptimizationOptionsKit(SegmentOptimizationOptionsKit const &in_kit)

The copy constructor creates a new SegmentOptimizationOptionsKit object that contains the same settings as the source SegmentOptimizationOptionsKit.

Parameters

in_kit – The source SegmentOptimizationOptionsKit to copy.

void Set(SegmentOptimizationOptionsKit const &in_kit)

Copies the source SegmentOptimizationOptionsKit into this SegmentOptimizationOptionsKit.

Parameters

in_kit – The source SegmentOptimizationOptionsKit to copy.

SegmentOptimizationOptionsKit &SetAttributeDelocalization(bool in_attribute_delocalization)

Controls whether or not local attributes will be pulled out of geometry.

Parameters

in_attribute_delocalization – Denotes whether or not local attributes will be pulled out of geometry.

Returns

A reference to this SegmentOptimizationOptionsKit.

SegmentOptimizationOptionsKit &SetExpansion(HPS::SegmentOptimizationOptions::Expansion in_expansion)

Controls whether or not includes or references are expanded.

Parameters

in_expansion – The enum value describing how to handle includes and references.

Returns

A reference to this SegmentOptimizationOptionsKit.

SegmentOptimizationOptionsKit &SetMatrix(HPS::SegmentOptimizationOptions::Matrix in_matrix)

Controls whether or not matrices are localized, collapsed, or left as is.

Parameters

in_matrix – The enum value describing how to handle matrices.

Returns

A reference to this SegmentOptimizationOptionsKit.

SegmentOptimizationOptionsKit &SetReorganization(HPS::SegmentOptimizationOptions::Reorganization in_reorganization)

Controls how the tree is reorganized.

Parameters

in_reorganization – The enum value describing how to reorganize the tree.

Returns

A reference to this SegmentOptimizationOptionsKit.

SegmentOptimizationOptionsKit &SetScope(HPS::SegmentOptimizationOptions::Scope in_scope)

Controls the traversal scope of the optimization operation.

Parameters

in_scope – The enum value describing the traversal scope of the optimization.

Returns

A reference to this SegmentOptimizationOptionsKit.

SegmentOptimizationOptionsKit &SetShellInstancing(bool in_shell_instancing)

Controls whether or not duplicate shells are instanced.

Parameters

in_shell_instancing – Denotes whether or not shells will be instanced.

Returns

A reference to this SegmentOptimizationOptionsKit.

SegmentOptimizationOptionsKit &SetShellMerging(bool in_shell_merging)

Controls whether or not distinct shells are merged into consolidated shells.

Parameters

in_shell_merging – Denotes whether or not shells will be merged.

Returns

A reference to this SegmentOptimizationOptionsKit.

SegmentOptimizationOptionsKit &SetUserData(HPS::SegmentOptimizationOptions::UserData in_user_data)

Controls whether or not user data is discarded, preserved, merged, localized, or left as is.

Parameters

in_user_data – The enum value describing how to handle user data.

Returns

A reference to this SegmentOptimizationOptionsKit.

void Show(SegmentOptimizationOptionsKit &out_kit) const

Copies this SegmentOptimizationOptionsKit into the given SegmentOptimizationOptionsKit.

Parameters

out_kit – The SegmentOptimizationOptionsKit to populate with the contents of this SegmentOptimizationOptionsKit.

bool ShowAttributeDelocalization(bool &out_attribute_delocalization) const

Shows the Attribute Delocalization setting.

Parameters

out_attribute_delocalization

Returns

true if the setting is valid, false otherwise.

bool ShowExpansion(HPS::SegmentOptimizationOptions::Expansion &out_expansion) const

Shows the Expansion setting.

Parameters

out_expansion

Returns

true if the setting is valid, false otherwise.

bool ShowMatrix(HPS::SegmentOptimizationOptions::Matrix &out_matrix) const

Shows the Matrix setting.

Parameters

out_matrix

Returns

true if the setting is valid, false otherwise.

bool ShowReorganization(HPS::SegmentOptimizationOptions::Reorganization &out_reorganization) const

Shows the Reorganization setting.

Parameters

out_reorganization

Returns

true if the setting is valid, false otherwise.

bool ShowScope(HPS::SegmentOptimizationOptions::Scope &out_scope) const

Shows the Scope setting.

Parameters

out_scope

Returns

true if the setting is valid, false otherwise.

bool ShowShellInstancing(bool &out_shell_instancing) const

Shows the Shell Instancing setting.

Parameters

out_shell_instancing

Returns

true if the setting is valid, false otherwise.

bool ShowShellMerging(bool &out_shell_merging) const

Shows the Shell Merging setting.

Parameters

out_shell_merging

Returns

true if the setting is valid, false otherwise.

bool ShowUserData(HPS::SegmentOptimizationOptions::UserData &out_user_data) const

Shows the User Data setting.

Parameters

out_user_data

Returns

true if the setting is valid, false otherwise.

SegmentOptimizationOptionsKit &UnsetAttributeDelocalization()

Unsets the ttributeDelocalization value on this kit.

Returns

A reference to this SegmentOptimizationOptionsKit.

SegmentOptimizationOptionsKit &UnsetEverything()

Removes all settings from this object.

Returns

A reference to this object.

SegmentOptimizationOptionsKit &UnsetExpansion()

Unsets the Expansion value on this kit.

Returns

A reference to this SegmentOptimizationOptionsKit.

SegmentOptimizationOptionsKit &UnsetMatrix()

Unsets the Matrix value on this kit.

Returns

A reference to this SegmentOptimizationOptionsKit.

SegmentOptimizationOptionsKit &UnsetReorganization()

Unsets the Reorganization value on this kit.

Returns

A reference to this SegmentOptimizationOptionsKit.

SegmentOptimizationOptionsKit &UnsetScope()

Unsets the Scope value on this kit.

Returns

A reference to this SegmentOptimizationOptionsKit.

SegmentOptimizationOptionsKit &UnsetShellInstancing()

Unsets the ShellInstancing value on this kit.

Returns

A reference to this SegmentOptimizationOptionsKit.

SegmentOptimizationOptionsKit &UnsetShellMerging()

Unsets the ShellMerging value on this kit.

Returns

A reference to this SegmentOptimizationOptionsKit.

SegmentOptimizationOptionsKit &UnsetUserData()

Unsets the UserData value on this kit.

Returns

A reference to this SegmentOptimizationOptionsKit.

virtual ~SegmentOptimizationOptionsKit()

Public Static Attributes

static const HPS::Type staticType = HPS::Type::SegmentOptimizationOptionsKit