Spatial C++ Library
Generic Multi-Dimensional Containers and Spatial Operations
|
Define the link type for a Kdtree that contains the value member. More...
#include <spatial_node.hpp>
Inherits spatial::details::Node< Kdtree_link< Key, Value > >.
Public Types | |
typedef Key | key_type |
The link to the key type. More... | |
typedef Value | value_type |
The link to the value type. More... | |
typedef Kdtree_link< Key, Value > | link_type |
The link to the node type, which is the node itself, since link information are also contained in this node. More... | |
typedef link_type * | link_ptr |
The link pointer which is often used, has a dedicated type. More... | |
typedef const link_type * | const_link_ptr |
The constant link pointer which is often used, has a dedicated type. More... | |
typedef Node< link_type > * | node_ptr |
The node pointer type deduced from the mode. More... | |
typedef const Node< link_type > * | const_node_ptr |
The constant node pointer deduced from the mode. More... | |
typedef strict_invariant_tag | invariant_category |
The category of invariant associated with this mode. More... | |
Public Types inherited from spatial::details::Node< Kdtree_link< Key, Value > > | |
typedef Kdtree_link< Key, Value > | link_type |
The link type that indicate how to reach the key and/or the value from the node. More... | |
Public Member Functions | |
Kdtree_link () | |
Default constructor. More... | |
Public Attributes | |
Value | value |
The value of the node, required by the Link Mode concept. More... | |
Public Attributes inherited from spatial::details::Node< Kdtree_link< Key, Value > > | |
Node * | parent |
A pointer to the parent of the current node. More... | |
Node * | left |
A pointer to the left child node of the current node. More... | |
Node * | right |
A pointer to the right child node of the current node. More... | |
Private Member Functions | |
Kdtree_link< Key, Value > & | operator= (const Kdtree_link< Key, Value > &) |
The link_type is a non-assignable type, because the key it contains is a constant type. More... | |
Define the link type for a Kdtree that contains the value member.
This type also contains the linking information, so it is a model of the Link Mode concept.
Key | The key type that is held by the Kdtree_link. |
Value | The value type that is held by the Kdtree_link. |
Definition at line 242 of file spatial_node.hpp.
typedef const link_type* spatial::details::Kdtree_link< Key, Value >::const_link_ptr |
The constant link pointer which is often used, has a dedicated type.
Definition at line 254 of file spatial_node.hpp.
typedef const Node<link_type>* spatial::details::Kdtree_link< Key, Value >::const_node_ptr |
The constant node pointer deduced from the mode.
Definition at line 258 of file spatial_node.hpp.
typedef strict_invariant_tag spatial::details::Kdtree_link< Key, Value >::invariant_category |
The category of invariant associated with this mode.
Definition at line 260 of file spatial_node.hpp.
typedef Key spatial::details::Kdtree_link< Key, Value >::key_type |
The link to the key type.
Definition at line 245 of file spatial_node.hpp.
typedef link_type* spatial::details::Kdtree_link< Key, Value >::link_ptr |
The link pointer which is often used, has a dedicated type.
Definition at line 252 of file spatial_node.hpp.
typedef Kdtree_link<Key, Value> spatial::details::Kdtree_link< Key, Value >::link_type |
The link to the node type, which is the node itself, since link information are also contained in this node.
Definition at line 250 of file spatial_node.hpp.
typedef Node<link_type>* spatial::details::Kdtree_link< Key, Value >::node_ptr |
The node pointer type deduced from the mode.
Definition at line 256 of file spatial_node.hpp.
typedef Value spatial::details::Kdtree_link< Key, Value >::value_type |
The link to the value type.
Definition at line 247 of file spatial_node.hpp.
spatial::details::Kdtree_link< Key, Value >::Kdtree_link | ( | ) |
Default constructor.
Definition at line 263 of file spatial_node.hpp.
|
private |
The link_type is a non-assignable type, because the key it contains is a constant type.
Most algorthims manipulate a pointer to this element rather than this element directly. Note that copy-construction is permitted.
Value spatial::details::Kdtree_link< Key, Value >::value |
The value of the node, required by the Link Mode concept.
In *-map containers, the value is necessarily a pair, with the first member being a key, and the second member being the mapped type. In *-set containers, the value and the key are one and the same thing.
In any case the value is always constant for keys, and therefore this type cannot be used in assignment operations, since keys cannot be changed. Most algorithm only use a pointer to the link_type.
Definition at line 276 of file spatial_node.hpp.