mlpack
Public Member Functions | List of all members
mlpack::tree::NoAuxiliaryInformation< TreeType > Class Template Reference

Public Member Functions

 NoAuxiliaryInformation ()
 Construct the auxiliary information object.
 
 NoAuxiliaryInformation (const TreeType *)
 Construct the auxiliary information object.
 
 NoAuxiliaryInformation (const NoAuxiliaryInformation &, TreeType *, bool=true)
 Construct the auxiliary information object.
 
 NoAuxiliaryInformation (NoAuxiliaryInformation &&)
 Construct the auxiliary information object.
 
NoAuxiliaryInformationoperator= (const NoAuxiliaryInformation &)
 Copy the auxiliary information object.
 
bool HandlePointInsertion (TreeType *, const size_t)
 Some tree types require to save some properties at the insertion process. More...
 
bool HandleNodeInsertion (TreeType *, TreeType *, bool)
 Some tree types require to save some properties at the insertion process. More...
 
bool HandlePointDeletion (TreeType *, const size_t)
 Some tree types require to save some properties at the deletion process. More...
 
bool HandleNodeRemoval (TreeType *, const size_t)
 Some tree types require to save some properties at the deletion process. More...
 
bool UpdateAuxiliaryInfo (TreeType *)
 Some tree types require to propagate the information upward. More...
 
void SplitAuxiliaryInfo (TreeType *, TreeType *, size_t, typename TreeType::ElemType)
 The R++ tree requires to split the maximum bounding rectangle of a node that is being split. More...
 
void NullifyData ()
 Nullify the auxiliary information in order to prevent an invalid free.
 
template<typename Archive >
void serialize (Archive &, const uint32_t)
 Serialize the information.
 

Member Function Documentation

◆ HandleNodeInsertion()

template<typename TreeType >
bool mlpack::tree::NoAuxiliaryInformation< TreeType >::HandleNodeInsertion ( TreeType *  ,
TreeType *  ,
bool   
)
inline

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 >
bool mlpack::tree::NoAuxiliaryInformation< TreeType >::HandleNodeRemoval ( TreeType *  ,
const size_t   
)
inline

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 >
bool mlpack::tree::NoAuxiliaryInformation< TreeType >::HandlePointDeletion ( TreeType *  ,
const size_t   
)
inline

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 >
bool mlpack::tree::NoAuxiliaryInformation< TreeType >::HandlePointInsertion ( TreeType *  ,
const size_t   
)
inline

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.

◆ SplitAuxiliaryInfo()

template<typename TreeType >
void mlpack::tree::NoAuxiliaryInformation< TreeType >::SplitAuxiliaryInfo ( TreeType *  ,
TreeType *  ,
size_t  ,
typename TreeType::ElemType   
)
inline

The R++ tree requires to split the maximum bounding rectangle of a node that is being split.

This method is intended for that. This method is only necessary for an AuxiliaryInformationType that is being used in conjunction with RPlusTreeSplit.

Parameters
*(treeOne) The first subtree.
*(treeTwo) The second subtree.
*(axis) The axis along which the split is performed.
*(cut) The coordinate at which the node is split.

◆ UpdateAuxiliaryInfo()

template<typename TreeType >
bool mlpack::tree::NoAuxiliaryInformation< TreeType >::UpdateAuxiliaryInfo ( TreeType *  )
inline

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: