#include <hps.h>
Public Member Functions | |
LineKey () | |
LineKey (Key const &in_that) | |
LineKey (LineKey const &in_that) | |
LineKey & | operator= (LineKey const &in_that) |
LineKey (LineKey &&in_that) | |
LineKey & | operator= (LineKey &&in_that) |
HPS::Type | ObjectType () const |
void | Consume (LineKit &in_kit) |
void | Set (LineKit const &in_kit) |
void | Show (LineKit &out_kit) const |
size_t | GetPointCount () const |
LineKey & | SetPoints (PointArray const &in_points) |
LineKey & | SetPoints (size_t in_count, Point const in_points[]) |
bool | ShowPoints (PointArray &out_points) const |
bool | ShowPointsByRange (size_t in_start_index, size_t in_count, PointArray &out_points) const |
bool | ShowPointsByList (SizeTArray const &in_indices, PointArray &out_points) const |
bool | ShowPointsByList (size_t in_count, size_t const in_indices[], PointArray &out_points) const |
LineKey & | EditPointsByInsertion (size_t in_offset, size_t in_count, Point const in_points[]) |
LineKey & | EditPointsByInsertion (size_t in_offset, PointArray const &in_points) |
LineKey & | EditPointsByDeletion (size_t in_offset, size_t in_count) |
LineKey & | EditPointsByReplacement (size_t in_offset, size_t in_count, Point const in_points[]) |
LineKey & | EditPointsByReplacement (size_t in_offset, PointArray const &in_points) |
![]() | |
GeometryKey () | |
GeometryKey (Key const &in_that) | |
GeometryKey (GeometryKey const &in_that) | |
GeometryKey & | operator= (GeometryKey const &in_that) |
GeometryKey (GeometryKey &&in_that) | |
GeometryKey & | operator= (GeometryKey &&in_that) |
size_t | ShowReferrers (SegmentKeyArray &out_segments) const |
size_t | ShowReferrers (ReferenceKeyArray &out_references) const |
GeometryKey & | SetPriority (int in_priority) |
GeometryKey & | UnsetPriority () |
bool | ShowPriority (int &out_priority) const |
GeometryKey & | SetUserData (intptr_t in_index, size_t in_bytes, byte const in_data[]) |
GeometryKey & | SetUserData (intptr_t in_index, ByteArray const &in_data) |
GeometryKey & | SetUserData (IntPtrTArray const &in_indices, ByteArrayArray const &in_data) |
GeometryKey & | UnsetUserData (intptr_t in_index) |
GeometryKey & | UnsetUserData (size_t in_count, intptr_t const in_indices[]) |
GeometryKey & | UnsetUserData (IntPtrTArray const &in_indices) |
GeometryKey & | UnsetAllUserData () |
size_t | ShowUserDataCount () const |
bool | ShowUserDataIndices (IntPtrTArray &out_indices) const |
bool | ShowUserData (intptr_t in_index, ByteArray &out_data) const |
bool | ShowUserData (IntPtrTArray &out_indices, ByteArrayArray &out_data) const |
bool | ShowBoundings (BoundingKit &out_kit) const |
![]() | |
Key () | |
Key (Key const &in_that) | |
Key (Control const &in_control) | |
Key (Key &&in_that) | |
Key & | operator= (Key &&in_that) |
virtual | ~Key () |
bool | HasOwner () const |
SegmentKey | Up () const |
SegmentKey | Owner () const |
void | Delete () |
void | MoveTo (SegmentKey const &in_new_owner) |
Key | CopyTo (SegmentKey const &in_destination) const |
Key & | operator= (Key const &in_that) |
virtual void | Assign (Key const &in_that) |
bool | Equals (Key const &in_that) const |
bool | operator!= (Key const &in_that) const |
bool | operator== (Key const &in_that) const |
size_t | GetHash () const |
![]() | |
Object & | operator= (Object const &other_object) |
Object (Object &&in_that) | |
Object & | operator= (Object &&in_that) |
HPS::Type | Type () const |
virtual bool | Empty () const |
virtual void | Reset () |
bool | HasType (HPS::Type in_mask) const |
intptr_t | GetClassID () const |
intptr_t | GetInstanceID () const |
Additional Inherited Members | |
![]() | |
template<typename T > | |
static intptr_t | ClassID () |
The LineKey class is a smart pointer to a database object. It is a handle to a line inserted via SegmentKey::InsertLine.
HPS::LineKey::LineKey | ( | ) |
|
explicit |
This constructor creates a LineKey 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 Line key. Otherwise the copy will fail and the resulting LineKey will be invalid.
in_key | The source Key to copy. |
HPS::LineKey::LineKey | ( | LineKey const & | in_that | ) |
HPS::LineKey::LineKey | ( | LineKey && | in_that | ) |
void HPS::LineKey::Consume | ( | LineKit & | in_kit | ) |
LineKey& HPS::LineKey::EditPointsByDeletion | ( | size_t | in_offset, |
size_t | in_count | ||
) |
Removes points from the point list for this LineKey.
in_offset | The offset into the point list for the line at which to start removing points. This value must be such that in_offset<point_count for deletion to succeed. |
in_count | The number of points to delete from the point list for the line. This value must be such that in_offset+in_count<=point_count for the deletion to succeed. |
LineKey& HPS::LineKey::EditPointsByInsertion | ( | size_t | in_offset, |
size_t | in_count, | ||
Point const | in_points[] | ||
) |
Adds points to the point list for this LineKey.
in_offset | The offset into the point list for the line at which to insert points. This value must be such that in_offset<point_count for insertion to succeed. |
in_count | Size of the following array. |
in_points | The points to insert into the point list at the specified offset. |
LineKey& HPS::LineKey::EditPointsByInsertion | ( | size_t | in_offset, |
PointArray const & | in_points | ||
) |
Adds points to the point list for this LineKey.
in_offset | The offset into the point list for the line at which to insert points. This value must be such that in_offset<point_count for insertion to succeed. |
in_points | The points to insert into the point list at the specified offset. |
LineKey& HPS::LineKey::EditPointsByReplacement | ( | size_t | in_offset, |
size_t | in_count, | ||
Point const | in_points[] | ||
) |
Replaces points in the point list for this LineKey.
in_offset | The offset into the point list for the line at which to start replacing points. This value must be such that in_offset<point_count for replacement to succeed. |
in_count | Size of the following array. This value must be such that in_offset+in_count<=point_count for the replacement to succeed. |
in_points | The points to use to replace those in the point list at the specified offset. |
LineKey& HPS::LineKey::EditPointsByReplacement | ( | size_t | in_offset, |
PointArray const & | in_points | ||
) |
Replaces points in the point list for this LineKey.
in_offset | The offset into the point list for the line at which to start replacing points. This value must be such that in_offset<point_count for replacement to succeed. |
in_points | The points to use to replace those in the point list at the specified offset. This size of the array must be such that in_offset+in_points.size()<=point_count for the replacement to succeed. |
size_t HPS::LineKey::GetPointCount | ( | ) | const |
Retrieves the number of points in this line.
|
inlinevirtual |
This function returns the type the object, as declared. This does not necessarily give the true type of the underlying object.
Reimplemented from HPS::GeometryKey.
void HPS::LineKey::Set | ( | LineKit const & | in_kit | ) |
LineKey& HPS::LineKey::SetPoints | ( | PointArray const & | in_points | ) |
void HPS::LineKey::Show | ( | LineKit & | out_kit | ) | const |
bool HPS::LineKey::ShowPoints | ( | PointArray & | out_points | ) | const |
bool HPS::LineKey::ShowPointsByList | ( | SizeTArray const & | in_indices, |
PointArray & | out_points | ||
) | const |
bool HPS::LineKey::ShowPointsByList | ( | size_t | in_count, |
size_t const | in_indices[], | ||
PointArray & | out_points | ||
) | const |
bool HPS::LineKey::ShowPointsByRange | ( | size_t | in_start_index, |
size_t | in_count, | ||
PointArray & | out_points | ||
) | const |