mlpack
|
Public Types | |
typedef TreeType::ElemType | ElemType |
The element type held by the tree. | |
Public Member Functions | |
HilbertRTreeAuxiliaryInformation () | |
Default constructor. | |
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... | |
HilbertRTreeAuxiliaryInformation & | operator= (const HilbertRTreeAuxiliaryInformation &other) |
Copy the auxiliary information. More... | |
bool | HandlePointInsertion (TreeType *node, const size_t point) |
The Hilbert R tree requires to insert points according to their Hilbert value. More... | |
bool | HandleNodeInsertion (TreeType *node, TreeType *nodeToInsert, bool insertionLevel) |
The Hilbert R tree requires to insert nodes 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 | HandleNodeRemoval (TreeType *node, const size_t nodeIndex) |
The Hilbert R tree requires all nodes to be arranged according to their Hilbert value. More... | |
bool | UpdateAuxiliaryInfo (TreeType *node) |
Update the auxiliary information in the node. More... | |
void | NullifyData () |
Clear memory. | |
const HilbertValueType< ElemType > & | HilbertValue () const |
Return the largest Hilbert value of a point covered by the node. | |
HilbertValueType< ElemType > & | HilbertValue () |
Modify the largest Hilbert value of a point covered by the node. | |
template<typename Archive > | |
void | serialize (Archive &ar, const uint32_t) |
Serialize the information. | |
Static Public Member Functions | |
static const std::vector< TreeType * > | Children (const TreeType *tree) |
Return the children vector of the tree. | |
mlpack::tree::HilbertRTreeAuxiliaryInformation< TreeType, HilbertValueType >::HilbertRTreeAuxiliaryInformation | ( | const TreeType * | node | ) |
Construct this as an auxiliary information for the given node.
node | The node that stores this auxiliary information. |
mlpack::tree::HilbertRTreeAuxiliaryInformation< TreeType, HilbertValueType >::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). |
mlpack::tree::HilbertRTreeAuxiliaryInformation< TreeType, HilbertValueType >::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. |
bool mlpack::tree::HilbertRTreeAuxiliaryInformation< TreeType, HilbertValueType >::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 mlpack::tree::HilbertRTreeAuxiliaryInformation< TreeType, HilbertValueType >::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 mlpack::tree::HilbertRTreeAuxiliaryInformation< TreeType, HilbertValueType >::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 mlpack::tree::HilbertRTreeAuxiliaryInformation< TreeType, HilbertValueType >::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. |
HilbertRTreeAuxiliaryInformation< TreeType, HilbertValueType > & mlpack::tree::HilbertRTreeAuxiliaryInformation< TreeType, HilbertValueType >::operator= | ( | const HilbertRTreeAuxiliaryInformation< TreeType, HilbertValueType > & | other | ) |
Copy the auxiliary information.
other | The object from which the information will be moved. |
bool mlpack::tree::HilbertRTreeAuxiliaryInformation< TreeType, HilbertValueType >::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. |