17 #include <IntVectSet.H>
18 #include <DenseIntVectSet.H>
19 #include <VoFIterator.H>
20 #include <FaceIterator.H>
24 #include <CD_Decorations.H>
25 #include <CD_NamespaceHeader.H>
40 template <
typename Functor>
42 loop(
const Box& a_computeBox, Functor&& kernel,
const IntVect& a_stride = IntVect::Unit);
49 template <
typename Functor>
51 loop(
const IntVectSet& a_ivs, Functor&& a_kernel);
58 template <
typename Functor>
60 loop(
const DenseIntVectSet& a_ivs, Functor&& a_kernel);
67 template <
typename Functor>
69 loop(VoFIterator& a_iter, Functor&& a_kernel);
76 template <
typename Functor>
78 loop(FaceIterator& a_iter, Functor&& a_kernel);
85 template <
typename T,
typename Functor>
87 loop(
const Vector<T>& a_subset, Functor&& a_kernel);
90 #include <CD_NamespaceFooter.H>
Implementation of CD_BoxLoops.H.
Namespace for encapsulating loop types.
Definition: CD_BoxLoops.H:30
ALWAYS_INLINE void loop(const Box &a_computeBox, Functor &&kernel, const IntVect &a_stride=IntVect::Unit)
Launch a C++ kernel over a regular grid.
Definition: CD_BoxLoopsImplem.H:20