#include <hps.h>
Public Member Functions | |
GridKey () | |
GridKey (Key const &in_that) | |
GridKey (GridKey const &in_that) | |
GridKey (GridKey &&in_that) | |
GridKey & | operator= (GridKey const &in_that) |
GridKey & | operator= (GridKey &&in_that) |
HPS::Type | ObjectType () const |
void | Consume (GridKit &in_kit) |
void | Set (GridKit const &in_kit) |
void | Show (GridKit &out_kit) const |
GridKey & | SetType (Grid::Type in_type) |
GridKey & | SetOrigin (Point const &in_origin) |
GridKey & | SetFirstPoint (Point const &in_first_point) |
GridKey & | SetSecondPoint (Point const &in_second_point) |
GridKey & | SetFirstCount (int in_first_count) |
GridKey & | SetSecondCount (int in_second_count) |
bool | ShowType (Grid::Type &out_type) const |
bool | ShowOrigin (Point &out_origin) const |
bool | ShowFirstPoint (Point &out_first_point) const |
bool | ShowSecondPoint (Point &out_second_point) const |
bool | ShowFirstCount (int &out_first_count) const |
bool | ShowSecondCount (int &out_second_count) const |
![]() | |
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 GridKey class is a smart pointer to a database object. It is a handle to a grid created by SegmentKey::InsertGrid.
HPS::GridKey::GridKey | ( | ) |
|
explicit |
This constructor creates an GridKey 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 grid key. Otherwise the copy will fail and the resulting GridKey will be invalid.
in_key | The source Key to copy. |
HPS::GridKey::GridKey | ( | GridKey const & | in_that | ) |
HPS::GridKey::GridKey | ( | GridKey && | in_that | ) |
void HPS::GridKey::Consume | ( | GridKit & | in_kit | ) |
|
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::GridKey::Set | ( | GridKit const & | in_kit | ) |
GridKey& HPS::GridKey::SetFirstCount | ( | int | in_first_count | ) |
Sets the first reference count for this GridKey, i.e., the number of grid elements along the vector determined by the first reference point. If the type of the grid is Grid::Type::Quadrilateral, there are three type of behavior depending on if the count is greater than zero, less than zero, or equal to zero. If the count is greater than zero, the count determines the finite number of grid lines which will intersect with the vector determined by the first reference point. If the count is less than zero, the count determines the finite number of grid lines which will intersect with the vector determined by the first reference point and additionally that same number of intersections along the negation of that vector. Lastly, if the count is zero, the grid will extend infinitely along the vector determined by the first reference point and its negation. If the type of the grid is Grid::Type::Radial, there are two types of behavior depending on if the count is greater than zero or equal to zero. If the count is greater than zero, it determines the finite number of circular arcs which will intersect with the radial vectors. If the count is equal to zero, there will be an infinite number of intersections along the radial arcs. Negative counts are invalid in this case.
in_first_count | The count of the number of grid elements along the vector determined by the first reference point. |
Sets the first reference point for this GridKey. If the type of the grid is Grid::Type::Quadrilateral, this defines the first point along one of the vectors defining the grid (the other vector is determined by the second point). It also determines the spacing between the grid lines along the vector. If the type of the grid is Grid::Type::Radial, this defines the first point along the radius vector which will intersect with the circular grid arcs.
in_first_point | The first reference point for this GridKey. |
GridKey& HPS::GridKey::SetSecondCount | ( | int | in_second_count | ) |
Sets the second reference count for this GridKey, i.e., the number of grid elements along the vector determined by the second reference point. If the type of the grid is Grid::Type::Quadrilateral, there are three type of behavior depending on if the count is greater than zero, less than zero, or equal to zero. If the count is greater than zero, the count determines the finite number of grid lines which will intersect with the vector determined by the second reference point. If the count is less than zero, the count determines the finite number of grid lines which will intersect with the vector determined by the second reference point and additionally that same number of intersections along the negation of that vector. Lastly, if the count is zero, the grid will extend infinitely along the vector determined by the second reference point and its negation. If the type of the grid is Grid::Type::Radial, the count determines the number of radial vectors for the grid.
in_second_count | The count of the number of grid elements along the vector determined by the second reference point. |
Sets the second reference point for this GridKey. If the type of the grid Grid::Type::Quadrilateral, this defines the first point along the second vector defining the grid (the other vector is determined by the first point). It also determines the spacing between the grid lines along the vector. If the type of the grid is Grid::Type::Radial, this defines the first point on the first circular arc which intersects with the radial vectors, and determines the spacing of the arcs along the radial vectors.
in_second_point | The second reference point for this GridKey. |
GridKey& HPS::GridKey::SetType | ( | Grid::Type | in_type | ) |
void HPS::GridKey::Show | ( | GridKit & | out_kit | ) | const |
bool HPS::GridKey::ShowFirstCount | ( | int & | out_first_count | ) | const |
bool HPS::GridKey::ShowFirstPoint | ( | Point & | out_first_point | ) | const |
bool HPS::GridKey::ShowOrigin | ( | Point & | out_origin | ) | const |
bool HPS::GridKey::ShowSecondCount | ( | int & | out_second_count | ) | const |
bool HPS::GridKey::ShowSecondPoint | ( | Point & | out_second_point | ) | const |
bool HPS::GridKey::ShowType | ( | Grid::Type & | out_type | ) | const |