Question about ArborX terminology
Created by: aprokop
There is some ambiguity surrounding naming of things in ArborX. Specifically, the definitions of "query", "predicate" and "predicate with attachment".
My current understanding of those terms is:
- predicate is a boolean function operating on a leaf node/user provided geometry
- query is a function that given a predicate(s) returns the results satisfying them.
If this language is correct, than we should not use
Query as an object and things like callbacks should read
- template <typename Query, typename Insert> - KOKKOS_FUNCTION void operator()(Query const &, int index, - Insert const &insert) const; + template <typename Predicate, typename Insert> + KOKKOS_FUNCTION void operator()(Predicate const &, int index, + Insert const &insert) const;
On the other hand, the callback happens after predicate evaluated to true on that node, so what is exactly the object here?
There is also a question of whether "predicate with attachment" should be considered different concept from "predicate".