SegmentOptimizationOptionsKit

class 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