#include <hps.h>
|
static const HPS::Type | staticType = HPS::Type::Key |
|
static const HPS::Type | staticType = HPS::Type::None |
|
|
template<typename T > |
static intptr_t | ClassID () |
|
The Key class is the common base class of all Visualize keys. Keys are handles to database objects and are the primary way of interacting with them (you would never modify a database object directly). The underlying mechanism is a smart pointer (assignment operator works like regular pointers). Attempting to use a deleted or otherwise invalid key will result in an InvalidObjectException.
◆ Key() [1/4]
An uninitialized key refers to no database object and Type() will return Type::None.
◆ Key() [2/4]
HPS::Key::Key |
( |
Key const & |
in_that | ) |
|
Shares a reference to a database object referred to by in_that.
◆ Key() [3/4]
HPS::Key::Key |
( |
Control const & |
in_control | ) |
|
|
explicit |
Initializes a key associated to the Control in_control.
◆ Key() [4/4]
HPS::Key::Key |
( |
Key && |
in_that | ) |
|
The move constructor creates a Key by transferring the underlying impl of the rvalue reference to this Key thereby avoiding a copy and allocation.
- Parameters
-
in_that | An rvalue reference to a Key to take the impl from. |
◆ ~Key()
virtual HPS::Key::~Key |
( |
| ) |
|
|
virtual |
Releases a reference to this key, but it does not remove the key from the database.
◆ Assign()
virtual void HPS::Key::Assign |
( |
Key const & |
in_that | ) |
|
|
virtual |
Share the underlying smart-pointer of the Key source.
- Parameters
-
in_that | The Key source of the assignment. |
◆ CopyTo()
Performs a deep copy of the database object referred to by this key into a segment pointed to by in_destination. If the copied key includes other keys or has child nodes, they will be recursively copied. Include links will also be copied, however, link targets will not be copied.
- Returns
- The key of the new copy.
◆ Delete()
void HPS::Key::Delete |
( |
| ) |
|
Removes the database object referred to by this key.
◆ Equals()
bool HPS::Key::Equals |
( |
Key const & |
in_that | ) |
const |
Determines whether the database objects pointed to by this key and in_that are the same. Empty keys (when key.Empty() returns true) are never equal to any key, even when the key is compared against itself (they act analogously to NaN comparisons in this case.)
◆ GetHash()
size_t HPS::Key::GetHash |
( |
| ) |
const |
Returns a hash code for the key.
- Returns
- The size_t hash code.
◆ HasOwner()
bool HPS::Key::HasOwner |
( |
| ) |
const |
- Returns
- Indicates whether this key has an owner or not.
◆ MoveTo()
void HPS::Key::MoveTo |
( |
SegmentKey const & |
in_new_owner | ) |
|
Moves the database object referred to by this key into a new containing segment pointed to by in_new_owner.
◆ ObjectType()
HPS::Type HPS::Key::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::Object.
Reimplemented in HPS::OffScreenWindowKey, HPS::PortfolioKey, HPS::ApplicationWindowKey, HPS::StandAloneWindowKey, HPS::ReferenceKey, HPS::StyleKey, HPS::IncludeKey, HPS::GridKey, HPS::PolygonKey, HPS::MeshKey, HPS::ShellKey, HPS::TextKey, HPS::EllipticalArcKey, HPS::EllipseKey, HPS::NURBSSurfaceKey, HPS::NURBSCurveKey, HPS::SpotlightKey, HPS::InfiniteLineKey, HPS::CuttingSectionKey, HPS::CircularWedgeKey, HPS::CircularArcKey, HPS::CircleKey, HPS::SphereKey, HPS::CylinderKey, HPS::DistantLightKey, HPS::MarkerKey, HPS::LineKey, HPS::GeometryKey, HPS::WindowKey, and HPS::SegmentKey.
◆ operator!=()
bool HPS::Key::operator!= |
( |
Key const & |
in_that | ) |
const |
Determines whether the database objects pointed to by this key and in_that are the same.
◆ operator=() [1/2]
Key& HPS::Key::operator= |
( |
Key && |
in_that | ) |
|
The move assignment operator transfers the underlying impl of the rvalue reference to this Key thereby avoiding a copy.
- Parameters
-
in_that | An rvalue reference to an Key to take the impl from. |
- Returns
- A reference to this Key.
◆ operator=() [2/2]
Key& HPS::Key::operator= |
( |
Key const & |
in_that | ) |
|
Share the underlying smart-pointer of the Key source.
- Parameters
-
in_that | The Key source of the assignment. |
- Returns
- A reference to this Key.
◆ operator==()
bool HPS::Key::operator== |
( |
Key const & |
in_that | ) |
const |
Determines whether the database objects pointed to by this key and in_that are the same.
◆ Owner()
- Returns
- The segment containing this key.
◆ Up()
- Returns
- The segment containing this key.
The documentation for this class was generated from the following file: