[mlpack-git] [mlpack/mlpack] Hilbert R tree (#664)

Ryan Curtin notifications at github.com
Tue Jun 21 11:20:43 EDT 2016


> +
> +namespace mlpack {
> +namespace tree {
> +
> +template<typename TreeType>
> +class NoAuxiliaryInformation
> +{
> + public:
> +  NoAuxiliaryInformation() { };
> +  NoAuxiliaryInformation(const TreeType* ) { };
> +  NoAuxiliaryInformation(const TreeType& ) { };
> +
> +  /**
> +   * Some tree types require to save some properties at the insertion process.
> +   * This method should return false if it does not handle the process.
> +   */

I spent a while reading through `NoAuxiliaryInformation` and `HilbertRTreeAuxiliaryInformation` and it took me a long time to understand exactly what `HandlePointInsertion`, `HandleNodeInsertion`, `HandlePointDeletion`, and `HandleNodeRemoval` did (like what the parameters were, what the return value should be).

To me it seems like each of these methods allow the auxiliary information the option of manipulating the tree to perform the insertion/deletion itself, but if the auxiliary information does that, then it should return true; if false is returned, the RectangleTree performs its default behavior.

Do you think you could add some documentation to both this file and HilbertRTreeAuxiliaryInformation detailing this?  (and what the HilbertRTreeAuxiliaryInformation does?)  That way someone else who wants to add some different auxiliary information class in the future (or just wants to understand these) will have a much easier time.

---
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/mlpack/mlpack/pull/664/files/f9127cea62d5ce1ad8d5f59931de108a2f7cdd9b#r67889562
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.cc.gatech.edu/pipermail/mlpack-git/attachments/20160621/2d889fbc/attachment-0001.html>


More information about the mlpack-git mailing list