Public Types | |
typedef TreeType::ElemType | ElemType |
The element type held by the tree. More... | |
Public Member Functions | |
HilbertRTreeAuxiliaryInformation () | |
Default constructor. More... | |
HilbertRTreeAuxiliaryInformation (const TreeType *node) | |
Construct this as an auxiliary information for the given node. More... | |
HilbertRTreeAuxiliaryInformation (const HilbertRTreeAuxiliaryInformation &other, TreeType *tree=NULL, bool deepCopy=true) | |
Create an auxiliary information object by copying from another object. More... | |
HilbertRTreeAuxiliaryInformation (HilbertRTreeAuxiliaryInformation &&other) | |
Create an auxiliary information object by moving from the other node. More... | |
bool | HandleNodeInsertion (TreeType *node, TreeType *nodeToInsert, bool insertionLevel) |
The Hilbert R tree requires to insert nodes according to their Hilbert value. More... | |
bool | HandleNodeRemoval (TreeType *node, const size_t nodeIndex) |
The Hilbert R tree requires all nodes to be arranged according to their Hilbert value. More... | |
bool | HandlePointDeletion (TreeType *node, const size_t localIndex) |
The Hilbert R tree requires all points to be arranged according to their Hilbert value. More... | |
bool | HandlePointInsertion (TreeType *node, const size_t point) |
The Hilbert R tree requires to insert points according to their Hilbert value. More... | |
const HilbertValueType< ElemType > & | HilbertValue () const |
Return the largest Hilbert value of a point covered by the node. More... | |
HilbertValueType< ElemType > & | HilbertValue () |
Modify the largest Hilbert value of a point covered by the node. More... | |
void | NullifyData () |
Clear memory. More... | |
HilbertRTreeAuxiliaryInformation & | operator= (const HilbertRTreeAuxiliaryInformation &other) |
Copy the auxiliary information. More... | |
template < typename Archive > | |
void | serialize (Archive &ar, const uint32_t) |
Serialize the information. More... | |
bool | UpdateAuxiliaryInfo (TreeType *node) |
Update the auxiliary information in the node. More... | |
Static Public Member Functions | |
static const std::vector< TreeType * > | Children (const TreeType *tree) |
Return the children vector of the tree. More... | |
Definition at line 22 of file hilbert_r_tree_auxiliary_information.hpp.
typedef TreeType::ElemType ElemType |
The element type held by the tree.
Definition at line 26 of file hilbert_r_tree_auxiliary_information.hpp.
Default constructor.
HilbertRTreeAuxiliaryInformation | ( | const TreeType * | node | ) |
Construct this as an auxiliary information for the given node.
node | The node that stores this auxiliary information. |
HilbertRTreeAuxiliaryInformation | ( | const HilbertRTreeAuxiliaryInformation< TreeType, HilbertValueType > & | other, |
TreeType * | tree = NULL , |
||
bool | deepCopy = true |
||
) |
Create an auxiliary information object by copying from another object.
other | Another auxiliary information object from which the information will be copied. |
tree | The node that holds the auxiliary information. |
deepCopy | If false, the new object uses the same memory (not used here). |
HilbertRTreeAuxiliaryInformation | ( | HilbertRTreeAuxiliaryInformation< TreeType, HilbertValueType > && | other | ) |
Create an auxiliary information object by moving from the other node.
other | The object from which the information will be moved. |
|
inlinestatic |
Return the children vector of the tree.
Definition at line 124 of file hilbert_r_tree_auxiliary_information.hpp.
bool HandleNodeInsertion | ( | TreeType * | node, |
TreeType * | nodeToInsert, | ||
bool | insertionLevel | ||
) |
The Hilbert R tree requires to insert nodes according to their Hilbert value.
This method should take care of it. It returns false if it does nothing and true if it handles the insertion process.
node | The node in which the nodeToInsert is being inserted. |
nodeToInsert | The node being inserted. |
insertionLevel | The level of the tree at which the nodeToInsert should be inserted. |
bool HandleNodeRemoval | ( | TreeType * | node, |
const size_t | nodeIndex | ||
) |
The Hilbert R tree requires all nodes to be arranged according to their Hilbert value.
This method should take care of saving this property after the deletion process. It returns false if it does nothing and true if it handles the deletion process.
node | The node from which the node is being deleted. |
nodeIndex | The index of the node being deleted. |
bool HandlePointDeletion | ( | TreeType * | node, |
const size_t | localIndex | ||
) |
The Hilbert R tree requires all points to be arranged according to their Hilbert value.
This method should take care of saving this property after the deletion process. It returns false if it does nothing and true if it handles the deletion process.
node | The node from which the point is being deleted. |
localIndex | The index of the point being deleted. |
bool HandlePointInsertion | ( | TreeType * | node, |
const size_t | point | ||
) |
The Hilbert R tree requires to insert points according to their Hilbert value.
This method should take care of it. It returns false if it does nothing and true if it handles the insertion process.
node | The node in which the point is being inserted. |
point | The number of the point being inserted. |
|
inline |
Return the largest Hilbert value of a point covered by the node.
Definition at line 133 of file hilbert_r_tree_auxiliary_information.hpp.
|
inline |
Modify the largest Hilbert value of a point covered by the node.
Definition at line 136 of file hilbert_r_tree_auxiliary_information.hpp.
References HilbertRTreeAuxiliaryInformation< TreeType, HilbertValueType >::serialize().
void NullifyData | ( | ) |
Clear memory.
HilbertRTreeAuxiliaryInformation& operator= | ( | const HilbertRTreeAuxiliaryInformation< TreeType, HilbertValueType > & | other | ) |
Copy the auxiliary information.
other | The object from which the information will be moved. |
void serialize | ( | Archive & | ar, |
const uint32_t | |||
) |
Serialize the information.
Referenced by HilbertRTreeAuxiliaryInformation< TreeType, HilbertValueType >::HilbertValue().
bool UpdateAuxiliaryInfo | ( | TreeType * | node | ) |
Update the auxiliary information in the node.
The method returns true if the update should be propagated downward.
node | The node in which the auxiliary information being update. |