HPS::CuttingSectionKey Class Reference

#include <hps.h>

Inheritance diagram for HPS::CuttingSectionKey:
HPS::GeometryKey HPS::Key HPS::Object

Public Member Functions

void Consume (CuttingSectionKit &in_kit)
 
 CuttingSectionKey ()
 
 CuttingSectionKey (Key const &in_that)
 
 CuttingSectionKey (CuttingSectionKey const &in_that)
 
 CuttingSectionKey (CuttingSectionKey &&in_that)
 
CuttingSectionKeyEditPlanesByDeletion (size_t in_offset, size_t in_count)
 
CuttingSectionKeyEditPlanesByInsertion (size_t in_offset, size_t in_count, Plane const in_planes[])
 
CuttingSectionKeyEditPlanesByInsertion (size_t in_offset, PlaneArray const &in_planes)
 
CuttingSectionKeyEditPlanesByReplacement (size_t in_offset, size_t in_count, Plane const in_planes[])
 
CuttingSectionKeyEditPlanesByReplacement (size_t in_offset, PlaneArray const &in_planes)
 
size_t GetPlaneCount () const
 
HPS::Type ObjectType () const
 
CuttingSectionKeyoperator= (CuttingSectionKey const &in_that)
 
CuttingSectionKeyoperator= (CuttingSectionKey &&in_that)
 
void Set (CuttingSectionKit const &in_kit)
 
CuttingSectionKeySetPlanes (Plane const &in_plane)
 
CuttingSectionKeySetPlanes (PlaneArray const &in_planes)
 
CuttingSectionKeySetPlanes (size_t in_count, Plane const in_planes[])
 
CuttingSectionKeySetVisualization (CuttingSection::Mode in_mode, RGBAColor const &in_color, float in_scale=1.0f)
 
void Show (CuttingSectionKit &out_kit) const
 
bool ShowPlanes (HPS::PlaneArray &out_planes) const
 
bool ShowVisualization (CuttingSection::Mode &out_mode, RGBAColor &out_color, float &out_scale) const
 
- Public Member Functions inherited from HPS::GeometryKey
 GeometryKey ()
 
 GeometryKey (Key const &in_that)
 
 GeometryKey (GeometryKey const &in_that)
 
 GeometryKey (GeometryKey &&in_that)
 
GeometryKeyoperator= (GeometryKey const &in_that)
 
GeometryKeyoperator= (GeometryKey &&in_that)
 
GeometryKeySetPriority (int in_priority)
 
GeometryKeySetUserData (intptr_t in_index, size_t in_bytes, byte const in_data[])
 
GeometryKeySetUserData (intptr_t in_index, ByteArray const &in_data)
 
GeometryKeySetUserData (IntPtrTArray const &in_indices, ByteArrayArray const &in_data)
 
bool ShowBounding (BoundingKit &out_kit) const
 
bool ShowPriority (int &out_priority) const
 
size_t ShowReferrers (SegmentKeyArray &out_segments) const
 
size_t ShowReferrers (ReferenceKeyArray &out_references) const
 
bool ShowUserData (intptr_t in_index, ByteArray &out_data) const
 
bool ShowUserData (IntPtrTArray &out_indices, ByteArrayArray &out_data) const
 
size_t ShowUserDataCount () const
 
bool ShowUserDataIndices (IntPtrTArray &out_indices) const
 
GeometryKeyUnsetAllUserData ()
 
GeometryKeyUnsetPriority ()
 
GeometryKeyUnsetUserData (intptr_t in_index)
 
GeometryKeyUnsetUserData (size_t in_count, intptr_t const in_indices[])
 
GeometryKeyUnsetUserData (IntPtrTArray const &in_indices)
 
- Public Member Functions inherited from HPS::Key
virtual void Assign (Key const &in_that)
 
Key CopyTo (SegmentKey const &in_destination) const
 
void Delete ()
 
bool Equals (Key const &in_that) const
 
size_t GetHash () const
 
bool HasOwner () const
 
 Key ()
 
 Key (Key const &in_that)
 
 Key (Control const &in_control)
 
 Key (Key &&in_that)
 
void MoveTo (SegmentKey const &in_new_owner)
 
bool operator!= (Key const &in_that) const
 
Keyoperator= (Key &&in_that)
 
Keyoperator= (Key const &in_that)
 
bool operator== (Key const &in_that) const
 
SegmentKey Owner () const
 
SegmentKey Up () const
 
virtual ~Key ()
 
- 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::CuttingSectionKey
 
- Static Public Attributes inherited from HPS::GeometryKey
static const HPS::Type staticType = HPS::Type::GeometryKey
 
- Static Public Attributes inherited from HPS::Key
static const HPS::Type staticType = HPS::Type::Key
 
- 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 CuttingSectionKey class is a smart pointer to a database object. It is a handle to a cutting section inserted via SegmentKey::InsertCuttingSection.

Constructor & Destructor Documentation

◆ CuttingSectionKey() [1/4]

HPS::CuttingSectionKey::CuttingSectionKey ( )

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

◆ CuttingSectionKey() [2/4]

HPS::CuttingSectionKey::CuttingSectionKey ( Key const &  in_that)
explicit

This constructor creates a CuttingSectionKey object that shares the underlying smart-pointer of the source Key. The copy will only be successful if the source key is really an upcast of a CuttingSection key. Otherwise the copy will fail and the resulting CuttingSectionKey will be invalid.

Parameters
in_thatThe source Key to copy.

◆ CuttingSectionKey() [3/4]

HPS::CuttingSectionKey::CuttingSectionKey ( CuttingSectionKey const &  in_that)

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

Parameters
in_thatThe source CuttingSectionKey to copy.

◆ CuttingSectionKey() [4/4]

HPS::CuttingSectionKey::CuttingSectionKey ( CuttingSectionKey &&  in_that)

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

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

Member Function Documentation

◆ Consume()

void HPS::CuttingSectionKey::Consume ( CuttingSectionKit in_kit)

Completely replaces all settings on this CuttingSectionKey with those set on the specified kit and resets the kit.

Parameters
in_kitThe kit from which to get the settings to replace on this CuttingSectionKey.

◆ EditPlanesByDeletion()

CuttingSectionKey& HPS::CuttingSectionKey::EditPlanesByDeletion ( size_t  in_offset,
size_t  in_count 
)

Removes planes from the cutting plane list for this CuttingSectionKey.

Parameters
in_offsetThe offset into the cutting planes for this CuttingSectionKey at which to start removing planes. This value must be such that in_offset<cutting_plane_count for deletion to succeed.
in_countThe number of planes to remove from the cutting plane list for this CuttingSectionKey. This value must be such that in_offset+in_count<=cutting_plane_count for the deletion to succeed.
Returns
A reference to this CuttingSectionKey.

◆ EditPlanesByInsertion() [1/2]

CuttingSectionKey& HPS::CuttingSectionKey::EditPlanesByInsertion ( size_t  in_offset,
size_t  in_count,
Plane const  in_planes[] 
)

Adds cutting planes to this CuttingSectionKey.

Parameters
in_offsetThe offset into the cutting plane list for the CuttingSectionKey at which to insert planes. This value must be such that in_offset<cutting_plane_count for insertion to succeed.
in_countSize of the following array.
in_planesThe planes to insert into the cutting plane list at the specified offset.
Returns
A reference to this CuttingSectionKey.

◆ EditPlanesByInsertion() [2/2]

CuttingSectionKey& HPS::CuttingSectionKey::EditPlanesByInsertion ( size_t  in_offset,
PlaneArray const &  in_planes 
)

Adds cutting planes to this CuttingSectionKey.

Parameters
in_offsetThe offset into the cutting plane list for the CuttingSectionKey at which to insert planes. This value must be such that in_offset<cutting_plane_count for insertion to succeed.
in_planesThe planes to insert into the cutting plane list at the specified offset.
Returns
A reference to this CuttingSectionKey.

◆ EditPlanesByReplacement() [1/2]

CuttingSectionKey& HPS::CuttingSectionKey::EditPlanesByReplacement ( size_t  in_offset,
size_t  in_count,
Plane const  in_planes[] 
)

Replaces planes in the cutting plane list for this CuttingSectionKey.

Parameters
in_offsetThe offset into the cutting plane list for this CuttingSectionKey at which to start replacing planes. This value must be such that in_offset<cutting_plane_count for replacement to succeed.
in_countSize of the following array. This value must be such that in_offset+in_count<=cutting_plane_count for the replacement to succeed.
in_planesThe planes to use to replace those in the cutting plane list at the specified offset.
Returns
A reference to this CuttingSectionKey.

◆ EditPlanesByReplacement() [2/2]

CuttingSectionKey& HPS::CuttingSectionKey::EditPlanesByReplacement ( size_t  in_offset,
PlaneArray const &  in_planes 
)

Replaces planes in the cutting plane list for this CuttingSectionKey.

Parameters
in_offsetThe offset into the cutting plane list for this CuttingSectionKey at which to start replacing planes. This value must be such that in_offset < cutting_plane_count for replacement to succeed.
in_planesThe planes to use to replace those in the cutting plane list at the specified offset. The size of this array must be such that in_offset+in_planes.size()<=cutting_plane_count for the replacement to succeed.
Returns
A reference to this CuttingSectionKey.

◆ GetPlaneCount()

size_t HPS::CuttingSectionKey::GetPlaneCount ( ) const

Gets the number of cutting planes for this CuttingSectionKey.

Returns
The number of cutting planes for this CuttingSectionKey.

◆ ObjectType()

HPS::Type HPS::CuttingSectionKey::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::GeometryKey.

◆ operator=() [1/2]

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

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

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

◆ operator=() [2/2]

CuttingSectionKey& HPS::CuttingSectionKey::operator= ( CuttingSectionKey &&  in_that)

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

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

◆ Set()

void HPS::CuttingSectionKey::Set ( CuttingSectionKit const &  in_kit)

Replace those settings on this CuttingSectionKey with those set on the specified kit.

Parameters
in_kitThe kit from which to get the settings to replace on this CuttingSectionKey.

◆ SetPlanes() [1/3]

CuttingSectionKey& HPS::CuttingSectionKey::SetPlanes ( Plane const &  in_plane)

Sets a single cutting plane for this CuttingSectionKey.

Parameters
in_planeThe cutting plane for this CuttingSectionKey.
Returns
A reference to this CuttingSectionKey.

◆ SetPlanes() [2/3]

CuttingSectionKey& HPS::CuttingSectionKey::SetPlanes ( PlaneArray const &  in_planes)

Sets multiple cutting planes for this CuttingSectionKey.

Parameters
in_planesThe cutting planes for this CuttingSectionKey.
Returns
A reference to this CuttingSectionKey.

◆ SetPlanes() [3/3]

CuttingSectionKey& HPS::CuttingSectionKey::SetPlanes ( size_t  in_count,
Plane const  in_planes[] 
)

Sets multiple cutting planes for this CuttingSectionKey.

Parameters
in_countSize of the following array.
in_planesThe cutting planes for this CuttingSectionKey.
Returns
A reference to this CuttingSectionKey.

◆ SetVisualization()

CuttingSectionKey& HPS::CuttingSectionKey::SetVisualization ( CuttingSection::Mode  in_mode,
RGBAColor const &  in_color,
float  in_scale = 1.0f 
)

Sets visualization to use for this CuttingSectionKey.

Parameters
in_modeThe mode for the CuttingSectionKey.
in_colorThe RGBA color for the CuttingSectionKey.
in_scaleThe scale to apply to the visualization geometry for this CuttingSectionKey. Defaults to 1.0f.
Returns
A reference to this CuttingSectionKey.

◆ Show()

void HPS::CuttingSectionKey::Show ( CuttingSectionKit out_kit) const

Copy the contents of this CuttingSectionKey into the specified kit.

Parameters
out_kitThe kit to populate with the contents of this CuttingSectionKey.

◆ ShowPlanes()

bool HPS::CuttingSectionKey::ShowPlanes ( HPS::PlaneArray out_planes) const

Shows the cutting planes for this CuttingSectionKey.

Parameters
out_planesThe cutting planes for this CuttingSectionKey.
Returns
true if any cutting planes were set, false otherwise.

◆ ShowVisualization()

bool HPS::CuttingSectionKey::ShowVisualization ( CuttingSection::Mode out_mode,
RGBAColor out_color,
float &  out_scale 
) const

Shows the visualization to use for this CuttingSectionKey.

Parameters
out_modeThe mode for this CuttingSectionKey.
out_colorThe RGBA color for this CuttingSectionKey.
out_scaleThe scale to apply to the visualization geometry for this CuttingSectionKey.
Returns
true if visualization options were set, false otherwise.

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