The XTreeAuxiliaryInformation class provides information specific to X trees for each node in a RectangleTree.
More...
#include <x_tree_auxiliary_information.hpp>
template<typename TreeType>
class mlpack::tree::XTreeAuxiliaryInformation< TreeType >
The XTreeAuxiliaryInformation class provides information specific to X trees for each node in a RectangleTree.
◆ SplitHistoryStruct
template<typename TreeType >
The X tree requires that the tree records it's "split history".
To make this easy, we use the following structure.
◆ XTreeAuxiliaryInformation() [1/3]
template<typename TreeType >
Construct this with the specified node.
- Parameters
-
node | The node that stores this auxiliary information. |
◆ XTreeAuxiliaryInformation() [2/3]
template<typename TreeType >
Create an auxiliary information object by copying from another object.
- Parameters
-
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). |
◆ XTreeAuxiliaryInformation() [3/3]
template<typename TreeType >
Create an auxiliary information object by moving from the other node.
- Parameters
-
other | The object from which the information will be moved. |
◆ HandleNodeInsertion()
template<typename TreeType >
Some tree types require to save some properties at the insertion process.
This method allows the auxiliary information the option of manipulating the tree in order to perform the insertion process. If the auxiliary information does that, then the method should return true; if the method returns false the RectangleTree performs its default behavior.
- Parameters
-
* | (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. |
◆ HandleNodeRemoval()
template<typename TreeType >
Some tree types require to save some properties at the deletion process.
This method allows the auxiliary information the option of manipulating the tree in order to perform the deletion process. If the auxiliary information does that, then the method should return true; if the method returns false the RectangleTree performs its default behavior.
- Parameters
-
* | (node) The node from which the node is being deleted. |
* | (nodeIndex) The local index of the node being deleted. |
◆ HandlePointDeletion()
template<typename TreeType >
Some tree types require to save some properties at the deletion process.
This method allows the auxiliary information the option of manipulating the tree in order to perform the deletion process. If the auxiliary information does that, then the method should return true; if the method returns false the RectangleTree performs its default behavior.
- Parameters
-
* | (node) The node from which the point is being deleted. |
* | (localIndex) The local index of the point being deleted. |
◆ HandlePointInsertion()
template<typename TreeType >
Some tree types require to save some properties at the insertion process.
This method allows the auxiliary information the option of manipulating the tree in order to perform the insertion process. If the auxiliary information does that, then the method should return true; if the method returns false the RectangleTree performs its default behavior.
- Parameters
-
* | (node) The node in which the point is being inserted. |
* | (point) The global number of the point being inserted. |
◆ operator=()
template<typename TreeType >
Copy the auxiliary information object.
- Parameters
-
other | The node from which the information will be copied. |
◆ UpdateAuxiliaryInfo()
template<typename TreeType >
Some tree types require to propagate the information upward.
This method should return false if this is not the case. If true is returned, the update will be propagated upward.
- Parameters
-
* | (node) The node in which the auxiliary information being update. |
The documentation for this class was generated from the following file: