99 for (
auto& c : children) disconnectOnChildChanged(*c);
120 bool contains(
const DVec& p)
const override;
128 Box getBoundingBox()
const override;
145 std::vector<Box>&
dest,
146 const PathHints* path = 0)
const override;
150 const PathHints* path = 0)
const override;
157 std::vector<DVec>&
dest,
158 const PathHints* path = 0)
const override;
174 template <
typename ChildIter>
192 std::size_t getChildrenCount()
const override;
201 std::size_t getChildIndex(
const shared_ptr<ChildType>& el,
const PathHints* path = 0)
const;
209 return getChildIndex(el, &path);
228 virtual bool removeIfTUnsafe(
const std::function<
bool(
const shared_ptr<TranslationT>& c)>& predicate);
235 bool removeIfT(
const std::function<
bool(
const shared_ptr<TranslationT>& c)>& predicate);
243 bool removeIf(
const std::function<
bool(
const shared_ptr<ChildType>& c)>& predicate) {
273 return removeIfT([&](
const shared_ptr<TranslationT>& t) {
285 void removeAtUnsafe(std::size_t index)
override;
289 removeIfT([](
const shared_ptr<ChildType>&) {
return true; });
301 auto c = path->getTranslationChildren<dim>(*this);
303 for (
auto child : c)
fun(*child);
307 for (
auto child : children)
fun(*child);
310 void addPointsAlongToSet(std::set<double>& points,
313 double min_step_size)
const override;
317 double min_step_size)
const override;