30 #ifndef MIRTK_ForEachQuinaryVoxelFunction_H 31 #define MIRTK_ForEachQuinaryVoxelFunction_H 33 #include "mirtk/Stream.h" 34 #include "mirtk/VoxelFunction.h" 40 inline void _foreachquinaryvoxelfunction_must_not_be_reduction()
42 cerr <<
"(Parallel)ForEachVoxel(If): Voxel reductions must be passed by reference!" 43 " Pass voxel functor object(s) as last argument(s) instead of first." << endl;
56 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
73 ForEachVoxelBody<VoxelFunc>(vf, im1.Attributes()), im1(im1), im2(im2), im3(im3), im4(im4), im5(im5)
79 ForEachVoxelBody<VoxelFunc>(o), im1(o.im1), im2(o.im2), im3(o.im3), im4(o.im4), im5(o.im5)
85 ForEachVoxelBody<VoxelFunc>(o, s), im1(o.im1), im2(o.im2), im3(o.im3), im4(o.im4), im5(o.im5)
97 const int T = (attr.
_dt ? attr.
_t : 1);
99 for (
int l = 0; l < T; ++l)
100 for (
int k = 0; k < attr.
_z; ++k)
101 for (
int j = 0; j < attr.
_y; ++j)
102 for (
int i = 0; i < attr.
_x; ++i, ++p1, ++p2, ++p3, ++p4, ++p5) {
118 for (
int idx = re.begin(); idx < re.end(); ++idx, p1 += 1, p2 += 1, p3 += 1, p4 += 1, p5 += 1) {
128 const int bi = re.cols().begin();
129 const int bj = re.rows().begin();
130 const int ei = re.cols().end();
131 const int ej = re.rows().end();
133 const int s1 = im5.
GetX() - (ei - bi);
141 for (
int j = bj; j < ej; ++j, p1 += s1, p2 += s1, p3 += s1, p4 += s1, p5 += s1)
142 for (
int i = bi; i < ei; ++i, p1 += 1, p2 += 1, p3 += 1, p4 += 1, p5 += 1) {
152 const int bi = re.cols ().begin();
153 const int bj = re.rows ().begin();
154 const int bk = re.pages().begin();
155 const int ei = re.cols ().end();
156 const int ej = re.rows ().end();
157 const int ek = re.pages().end();
159 const int s1 = im5.
GetX() - (ei - bi);
160 const int s2 = (im5.
GetY() - (ej - bj)) * im5.
GetX();
168 for (
int k = bk; k < ek; ++k, p1 += s2, p2 += s2, p3 += s2, p4 += s2, p5 += s2)
169 for (
int j = bj; j < ej; ++j, p1 += s1, p2 += s1, p3 += s1, p4 += s1, p5 += s1)
170 for (
int i = bi; i < ei; ++i, p1 += 1, p2 += 1, p3 += 1, p4 += 1, p5 += 1) {
182 template <
class T1,
class T2,
class T3,
class T4,
class T5,
199 VoxelFunc &vf, OutsideFunc &of)
201 ForEachVoxelIfBody<VoxelFunc, OutsideFunc>(vf, of, im1.Attributes()), im1(im1), im2(im2), im3(im3), im4(im4), im5(im5)
207 ForEachVoxelIfBody<VoxelFunc, OutsideFunc>(o), im1(o.im1), im2(o.im2), im3(o.im3), im4(o.im4), im5(o.im5)
213 ForEachVoxelIfBody<VoxelFunc, OutsideFunc>(o, s), im1(o.im1), im2(o.im2), im3(o.im3), im4(o.im4), im5(o.im5)
225 const int T = (attr.
_dt ? attr.
_t : 1);
227 for (
int l = 0; l < T; ++l)
228 for (
int k = 0; k < attr.
_z; ++k)
229 for (
int j = 0; j < attr.
_y; ++j)
230 for (
int i = 0; i < attr.
_x; ++i, ++p1, ++p2, ++p3, ++p4, ++p5) {
231 if (Domain::IsInside(im5, i, j, k, l, p5)) {
248 for (
int idx = re.begin(); idx < re.end(); ++idx, p1 += 1, p2 += 1, p3 += 1, p4 += 1, p5 += 1) {
249 if (Domain::IsInside(im5, idx, p5)) {
260 const int bi = re.cols().begin();
261 const int bj = re.rows().begin();
262 const int ei = re.cols().end();
263 const int ej = re.rows().end();
265 const int s1 = im5.
GetX() - (ei - bi);
273 for (
int j = bj; j < ej; ++j, p1 += s1, p2 += s1, p3 += s1, p4 += s1, p5 += s1)
274 for (
int i = bi; i < ei; ++i, p1 += 1, p2 += 1, p3 += 1, p4 += 1, p5 += 1) {
275 if (Domain::IsInside(im5, i, j, this->_k, this->
_l, p5)) {
286 const int bi = re.cols ().begin();
287 const int bj = re.rows ().begin();
288 const int bk = re.pages().begin();
289 const int ei = re.cols ().end();
290 const int ej = re.rows ().end();
291 const int ek = re.pages().end();
293 const int s1 = im5.
GetX() - (ei - bi);
294 const int s2 = (im5.
GetY() - (ej - bj)) * im5.
GetX();
302 for (
int k = bk; k < ek; ++k, p1 += s2, p2 += s2, p3 += s2, p4 += s2, p5 += s2)
303 for (
int j = bj; j < ej; ++j, p1 += s1, p2 += s1, p3 += s1, p4 += s1, p5 += s1)
304 for (
int i = bi; i < ei; ++i, p1 += 1, p2 += 1, p3 += 1, p4 += 1, p5 += 1) {
305 if (Domain::IsInside(im5, i, j, k, this->
_l, p5)) {
323 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
326 QuinaryForEachVoxelBody_Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
329 vf.join(body._VoxelFunc);
333 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
336 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
337 ForEachScalar(*im1, *im2, *im3, *im4, *im5, vf);
341 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
345 ForEachScalar(*im1, *im2, *im3, *im4, *im5, vf);
347 QuinaryForEachVoxelBody_Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
350 vf.join(body._VoxelFunc);
355 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
358 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
359 ForEachVoxel(*im1, *im2, *im3, *im4, *im5, vf);
363 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
366 QuinaryForEachVoxelBody_Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
372 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
375 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
376 ForEachVoxel(attr, *im1, *im2, *im3, *im4, *im5, vf);
380 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
383 QuinaryForEachVoxelBody_Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
389 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
392 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
393 ForEachVoxel(re, *im1, *im2, *im3, *im4, *im5, vf);
397 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
400 QuinaryForEachVoxelBody_Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
406 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
409 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
410 ForEachVoxel(re, *im1, *im2, *im3, *im4, *im5, vf);
414 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
417 QuinaryForEachVoxelBody_Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
423 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
426 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
427 ForEachVoxel(re, *im1, *im2, *im3, *im4, *im5, vf);
435 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
438 QuinaryForEachVoxelBody_Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
441 vf.join(body._VoxelFunc);
445 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
448 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
449 ForEachScalar(im1, im2, im3, im4, im5, vf);
453 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
457 ForEachScalar(im1, im2, im3, im4, im5, vf);
459 QuinaryForEachVoxelBody_Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
462 vf.join(body._VoxelFunc);
467 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
470 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
471 ForEachVoxel(im1, im2, im3, im4, im5, vf);
475 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
478 QuinaryForEachVoxelBody_Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
484 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
487 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
488 ForEachVoxel(attr, im1, im2, im3, im4, im5, vf);
492 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
495 QuinaryForEachVoxelBody_Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
501 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
504 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
505 ForEachVoxel(re, im1, im2, im3, im4, im5, vf);
509 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
512 QuinaryForEachVoxelBody_Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
518 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
521 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
522 ForEachVoxel(re, im1, im2, im3, im4, im5, vf);
526 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
529 QuinaryForEachVoxelBody_Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
535 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
538 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
539 ForEachVoxel(re, im1, im2, im3, im4, im5, vf);
551 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
554 QuinaryForEachVoxelIfBody_Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
557 vf.join(body._VoxelFunc);
558 of.join(body._OutsideFunc);
562 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
565 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
566 ForEachScalarIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
570 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
574 ForEachScalarIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
578 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
581 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
582 ForEachScalarIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf);
586 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
590 ForEachScalarIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
592 QuinaryForEachVoxelIfBody_Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
595 vf.join(body._VoxelFunc);
596 of.join(body._OutsideFunc);
601 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
604 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
605 ForEachVoxelIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
609 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
613 ForEachVoxelIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
617 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
620 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
621 ForEachVoxelIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf);
625 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
628 QuinaryForEachVoxelIfBody_Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
635 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
638 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
639 ForEachVoxelIf<Domain>(attr, *im1, *im2, *im3, *im4, *im5, vf, of);
643 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
647 ForEachVoxelIf<Domain>(attr, *im1, *im2, *im3, *im4, *im5, vf, of);
651 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
654 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
655 ForEachVoxelIf<Domain>(attr, *im1, *im2, *im3, *im4, *im5, vf);
659 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
662 QuinaryForEachVoxelIfBody_Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
669 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
672 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
673 ForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
677 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
680 QuinaryForEachVoxelIfBody_Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
687 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
690 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
691 ForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
695 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
699 ForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
703 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
706 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
707 ForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf);
711 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
714 QuinaryForEachVoxelIfBody_Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
721 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
724 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
725 ForEachVoxelIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
729 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
733 ForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
737 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
740 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
741 ForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf);
749 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
752 QuinaryForEachVoxelIfBody_Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
755 vf.join(body._VoxelFunc);
756 of.join(body._OutsideFunc);
760 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
763 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
764 ForEachScalarIf<Domain>(im1, im2, im3, im4, im5, vf, of);
768 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
772 ForEachScalarIf<Domain>(im1, im2, im3, im4, im5, vf, of);
776 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
779 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
780 ForEachScalarIf<Domain>(im1, im2, im3, im4, im5, vf);
784 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
788 ForEachVoxelIf<Domain>(im1, im2, im3, im4, im5, vf, of);
790 QuinaryForEachVoxelIfBody_Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
793 vf.join(body._VoxelFunc);
794 of.join(body._OutsideFunc);
799 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
802 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
803 ForEachVoxelIf<Domain>(im1, im2, im3, im4, im5, vf, of);
807 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
811 ForEachVoxelIf<Domain>(im1, im2, im3, im4, im5, vf, of);
815 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
818 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
819 ForEachVoxelIf<Domain>(im1, im2, im3, im4, im5, vf);
823 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
826 QuinaryForEachVoxelIfBody_Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
833 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
836 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
837 ForEachVoxelIf<Domain>(attr, im1, im2, im3, im4, im5, vf, of);
841 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
845 ForEachVoxelIf<Domain>(attr, im1, im2, im3, im4, im5, vf, of);
849 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
852 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
853 ForEachVoxelIf<Domain>(attr, im1, im2, im3, im4, im5, vf);
857 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
860 QuinaryForEachVoxelIfBody_Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
867 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
870 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
871 ForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
875 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
878 QuinaryForEachVoxelIfBody_Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
885 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
888 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
889 ForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
893 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
897 ForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
901 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
904 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
905 ForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf);
909 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
912 QuinaryForEachVoxelIfBody_Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
919 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
922 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
923 ForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
927 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
931 ForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
935 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
938 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
939 ForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf);
951 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
954 QuinaryForEachVoxelBody_Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
961 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
964 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
965 ParallelForEachScalar(*im1, *im2, *im3, *im4, *im5, vf);
969 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
973 ParallelForEachScalar(*im1, *im2, *im3, *im4, *im5, vf);
975 QuinaryForEachVoxelBody_Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
983 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
986 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
987 ParallelForEachVoxel(*im1, *im2, *im3, *im4, *im5, vf);
991 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
994 QuinaryForEachVoxelBody_Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
996 if (VoxelFunc::IsReduction()) {
1013 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
1016 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
1017 ParallelForEachVoxel(attr, *im1, *im2, *im3, *im4, *im5, vf);
1021 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
1024 QuinaryForEachVoxelBody_Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
1030 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
1033 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
1034 ParallelForEachVoxel(re, *im1, *im2, *im3, *im4, *im5, vf);
1038 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
1041 QuinaryForEachVoxelBody_Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
1047 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
1050 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
1051 ParallelForEachVoxel(re, *im1, *im2, *im3, *im4, *im5, vf);
1055 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
1058 QuinaryForEachVoxelBody_Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
1064 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
1067 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
1068 ParallelForEachVoxel(re, *im1, *im2, *im3, *im4, *im5, vf);
1076 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
1079 QuinaryForEachVoxelBody_Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
1086 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
1089 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
1090 ParallelForEachScalar(im1, im2, im3, im4, im5, vf);
1094 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
1098 ParallelForEachScalar(im1, im2, im3, im4, im5, vf);
1100 QuinaryForEachVoxelBody_Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
1108 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
1111 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
1112 ParallelForEachVoxel(im1, im2, im3, im4, im5, vf);
1116 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
1119 QuinaryForEachVoxelBody_Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
1121 if (VoxelFunc::IsReduction()) {
1138 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
1141 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
1142 ParallelForEachVoxel(attr, im1, im2, im3, im4, im5, vf);
1146 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
1149 QuinaryForEachVoxelBody_Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
1155 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
1158 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
1159 ParallelForEachVoxel(re, im1, im2, im3, im4, im5, vf);
1163 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
1166 QuinaryForEachVoxelBody_Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
1172 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
1175 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
1176 ParallelForEachVoxel(re, im1, im2, im3, im4, im5, vf);
1180 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
1183 QuinaryForEachVoxelBody_Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
1189 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
1192 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
1193 ParallelForEachVoxel(re, im1, im2, im3, im4, im5, vf);
1205 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
1208 QuinaryForEachVoxelIfBody_Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
1210 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
1220 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
1223 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
1224 ParallelForEachScalarIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
1228 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
1232 ParallelForEachScalarIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
1236 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
1239 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
1240 ParallelForEachScalarIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf);
1244 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
1248 ParallelForEachVoxelIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
1250 QuinaryForEachVoxelIfBody_Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
1252 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
1263 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
1266 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
1267 ParallelForEachVoxelIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
1271 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
1275 ParallelForEachVoxelIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
1279 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
1282 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
1283 ParallelForEachVoxelIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf);
1287 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
1290 QuinaryForEachVoxelIfBody_Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
1292 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
1310 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
1313 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
1314 ParallelForEachVoxelIf<Domain>(attr, *im1, *im2, *im3, *im4, *im5, vf, of);
1318 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
1322 ParallelForEachVoxelIf<Domain>(attr, *im1, *im2, *im3, *im4, *im5, vf, of);
1326 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
1329 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
1330 ParallelForEachVoxelIf<Domain>(attr, *im1, *im2, *im3, *im4, *im5, vf);
1334 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
1337 QuinaryForEachVoxelIfBody_Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
1338 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
1348 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
1351 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
1352 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
1356 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
1360 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
1364 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
1367 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
1368 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf);
1372 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
1375 QuinaryForEachVoxelIfBody_Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
1376 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
1386 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
1389 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
1390 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
1394 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
1398 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
1402 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
1405 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
1406 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf);
1410 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
1413 QuinaryForEachVoxelIfBody_Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
1414 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
1424 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
1427 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
1428 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
1432 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
1436 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
1440 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
1443 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
1444 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf);
1452 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
1455 QuinaryForEachVoxelIfBody_Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
1457 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
1467 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
1470 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
1471 ParallelForEachScalarIf<Domain>(im1, im2, im3, im4, im5, vf, of);
1475 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
1479 ParallelForEachScalarIf<Domain>(im1, im2, im3, im4, im5, vf, of);
1483 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
1486 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
1487 ParallelForEachScalarIf<Domain>(im1, im2, im3, im4, im5, vf);
1491 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
1495 ParallelForEachVoxelIf<Domain>(im1, im2, im3, im4, im5, vf, of);
1497 QuinaryForEachVoxelIfBody_Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
1499 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
1510 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
1513 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
1514 ParallelForEachVoxelIf<Domain>(im1, im2, im3, im4, im5, vf, of);
1518 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
1522 ParallelForEachVoxelIf<Domain>(im1, im2, im3, im4, im5, vf, of);
1526 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
1529 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
1530 ParallelForEachVoxelIf<Domain>(im1, im2, im3, im4, im5, vf);
1534 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
1537 QuinaryForEachVoxelIfBody_Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
1539 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
1557 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
1560 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
1561 ParallelForEachVoxelIf<Domain>(attr, im1, im2, im3, im4, im5, vf, of);
1565 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
1569 ParallelForEachVoxelIf<Domain>(attr, im1, im2, im3, im4, im5, vf, of);
1573 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
1576 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
1577 ParallelForEachVoxelIf<Domain>(attr, im1, im2, im3, im4, im5, vf);
1581 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
1584 QuinaryForEachVoxelIfBody_Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
1585 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
1595 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
1598 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
1599 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
1603 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
1607 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
1611 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
1614 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
1615 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf);
1619 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
1622 QuinaryForEachVoxelIfBody_Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
1623 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
1633 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
1636 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
1637 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
1641 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
1645 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
1649 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
1652 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
1653 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf);
1657 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
1660 QuinaryForEachVoxelIfBody_Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
1661 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
1671 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
1674 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
1675 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
1679 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
1683 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
1687 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
1690 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
1691 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf);
1702 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
1719 ForEachVoxelBody<VoxelFunc>(vf, im1.Attributes()), im1(im1), im2(im2), im3(im3), im4(im4), im5(im5)
1725 ForEachVoxelBody<VoxelFunc>(o), im1(o.im1), im2(o.im2), im3(o.im3), im4(o.im4), im5(o.im5)
1731 ForEachVoxelBody<VoxelFunc>(o, s), im1(o.im1), im2(o.im2), im3(o.im3), im4(o.im4), im5(o.im5)
1743 const int T = (attr.
_dt ? attr.
_t : 1);
1745 for (
int l = 0; l < T; ++l)
1746 for (
int k = 0; k < attr.
_z; ++k)
1747 for (
int j = 0; j < attr.
_y; ++j)
1748 for (
int i = 0; i < attr.
_x; ++i, ++p1, ++p2, ++p3, ++p4, ++p5) {
1764 for (
int idx = re.begin(); idx < re.end(); ++idx, p1 += 1, p2 += 1, p3 += 1, p4 += 1, p5 += 1) {
1774 const int bi = re.cols().begin();
1775 const int bj = re.rows().begin();
1776 const int ei = re.cols().end();
1777 const int ej = re.rows().end();
1779 const int s1 = im5.
GetX() - (ei - bi);
1787 for (
int j = bj; j < ej; ++j, p1 += s1, p2 += s1, p3 += s1, p4 += s1, p5 += s1)
1788 for (
int i = bi; i < ei; ++i, p1 += 1, p2 += 1, p3 += 1, p4 += 1, p5 += 1) {
1798 const int bi = re.cols ().begin();
1799 const int bj = re.rows ().begin();
1800 const int bk = re.pages().begin();
1801 const int ei = re.cols ().end();
1802 const int ej = re.rows ().end();
1803 const int ek = re.pages().end();
1805 const int s1 = im5.
GetX() - (ei - bi);
1806 const int s2 = (im5.
GetY() - (ej - bj)) * im5.
GetX();
1814 for (
int k = bk; k < ek; ++k, p1 += s2, p2 += s2, p3 += s2, p4 += s2, p5 += s2)
1815 for (
int j = bj; j < ej; ++j, p1 += s1, p2 += s1, p3 += s1, p4 += s1, p5 += s1)
1816 for (
int i = bi; i < ei; ++i, p1 += 1, p2 += 1, p3 += 1, p4 += 1, p5 += 1) {
1828 template <
class T1,
class T2,
class T3,
class T4,
class T5,
1845 VoxelFunc &vf, OutsideFunc &of)
1847 ForEachVoxelIfBody<VoxelFunc, OutsideFunc>(vf, of, im1.Attributes()), im1(im1), im2(im2), im3(im3), im4(im4), im5(im5)
1853 ForEachVoxelIfBody<VoxelFunc, OutsideFunc>(o), im1(o.im1), im2(o.im2), im3(o.im3), im4(o.im4), im5(o.im5)
1859 ForEachVoxelIfBody<VoxelFunc, OutsideFunc>(o, s), im1(o.im1), im2(o.im2), im3(o.im3), im4(o.im4), im5(o.im5)
1871 const int T = (attr.
_dt ? attr.
_t : 1);
1873 for (
int l = 0; l < T; ++l)
1874 for (
int k = 0; k < attr.
_z; ++k)
1875 for (
int j = 0; j < attr.
_y; ++j)
1876 for (
int i = 0; i < attr.
_x; ++i, ++p1, ++p2, ++p3, ++p4, ++p5) {
1877 if (Domain::IsInside(im5, i, j, k, l, p5)) {
1894 for (
int idx = re.begin(); idx < re.end(); ++idx, p1 += 1, p2 += 1, p3 += 1, p4 += 1, p5 += 1) {
1895 if (Domain::IsInside(im5, idx, p5)) {
1906 const int bi = re.cols().begin();
1907 const int bj = re.rows().begin();
1908 const int ei = re.cols().end();
1909 const int ej = re.rows().end();
1911 const int s1 = im5.
GetX() - (ei - bi);
1919 for (
int j = bj; j < ej; ++j, p1 += s1, p2 += s1, p3 += s1, p4 += s1, p5 += s1)
1920 for (
int i = bi; i < ei; ++i, p1 += 1, p2 += 1, p3 += 1, p4 += 1, p5 += 1) {
1921 if (Domain::IsInside(im5, i, j, this->_k, this->
_l, p5)) {
1932 const int bi = re.cols ().begin();
1933 const int bj = re.rows ().begin();
1934 const int bk = re.pages().begin();
1935 const int ei = re.cols ().end();
1936 const int ej = re.rows ().end();
1937 const int ek = re.pages().end();
1939 const int s1 = im5.
GetX() - (ei - bi);
1940 const int s2 = (im5.
GetY() - (ej - bj)) * im5.
GetX();
1948 for (
int k = bk; k < ek; ++k, p1 += s2, p2 += s2, p3 += s2, p4 += s2, p5 += s2)
1949 for (
int j = bj; j < ej; ++j, p1 += s1, p2 += s1, p3 += s1, p4 += s1, p5 += s1)
1950 for (
int i = bi; i < ei; ++i, p1 += 1, p2 += 1, p3 += 1, p4 += 1, p5 += 1) {
1951 if (Domain::IsInside(im5, i, j, k, this->
_l, p5)) {
1969 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
1972 QuinaryForEachVoxelBody_4Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
1975 vf.join(body._VoxelFunc);
1979 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
1982 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
1983 ForEachScalar(*im1, *im2, *im3, *im4, *im5, vf);
1987 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
1991 ForEachScalar(*im1, *im2, *im3, *im4, *im5, vf);
1993 QuinaryForEachVoxelBody_4Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
1996 vf.join(body._VoxelFunc);
2001 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2004 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2005 ForEachVoxel(*im1, *im2, *im3, *im4, *im5, vf);
2009 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2012 QuinaryForEachVoxelBody_4Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
2018 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2021 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2022 ForEachVoxel(attr, *im1, *im2, *im3, *im4, *im5, vf);
2026 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2029 QuinaryForEachVoxelBody_4Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
2035 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2038 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2039 ForEachVoxel(re, *im1, *im2, *im3, *im4, *im5, vf);
2043 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2046 QuinaryForEachVoxelBody_4Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
2052 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2055 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2056 ForEachVoxel(re, *im1, *im2, *im3, *im4, *im5, vf);
2060 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2063 QuinaryForEachVoxelBody_4Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
2069 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2072 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2073 ForEachVoxel(re, *im1, *im2, *im3, *im4, *im5, vf);
2081 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2084 QuinaryForEachVoxelBody_4Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
2087 vf.join(body._VoxelFunc);
2091 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2094 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2095 ForEachScalar(im1, im2, im3, im4, im5, vf);
2099 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2103 ForEachScalar(im1, im2, im3, im4, im5, vf);
2105 QuinaryForEachVoxelBody_4Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
2108 vf.join(body._VoxelFunc);
2113 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2116 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2117 ForEachVoxel(im1, im2, im3, im4, im5, vf);
2121 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2124 QuinaryForEachVoxelBody_4Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
2130 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2133 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2134 ForEachVoxel(attr, im1, im2, im3, im4, im5, vf);
2138 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2141 QuinaryForEachVoxelBody_4Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
2147 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2150 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2151 ForEachVoxel(re, im1, im2, im3, im4, im5, vf);
2155 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2158 QuinaryForEachVoxelBody_4Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
2164 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2167 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2168 ForEachVoxel(re, im1, im2, im3, im4, im5, vf);
2172 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2175 QuinaryForEachVoxelBody_4Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
2181 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2184 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2185 ForEachVoxel(re, im1, im2, im3, im4, im5, vf);
2197 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
2200 QuinaryForEachVoxelIfBody_4Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
2203 vf.join(body._VoxelFunc);
2204 of.join(body._OutsideFunc);
2208 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
2211 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2212 ForEachScalarIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
2216 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2220 ForEachScalarIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
2224 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2227 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2228 ForEachScalarIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf);
2232 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
2236 ForEachScalarIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
2238 QuinaryForEachVoxelIfBody_4Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
2241 vf.join(body._VoxelFunc);
2242 of.join(body._OutsideFunc);
2247 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
2250 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2251 ForEachVoxelIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
2255 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2259 ForEachVoxelIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
2263 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2266 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2267 ForEachVoxelIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf);
2271 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
2274 QuinaryForEachVoxelIfBody_4Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
2281 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
2284 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2285 ForEachVoxelIf<Domain>(attr, *im1, *im2, *im3, *im4, *im5, vf, of);
2289 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2293 ForEachVoxelIf<Domain>(attr, *im1, *im2, *im3, *im4, *im5, vf, of);
2297 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2300 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2301 ForEachVoxelIf<Domain>(attr, *im1, *im2, *im3, *im4, *im5, vf);
2305 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
2308 QuinaryForEachVoxelIfBody_4Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
2315 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
2318 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2319 ForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
2323 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
2326 QuinaryForEachVoxelIfBody_4Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
2333 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
2336 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2337 ForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
2341 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2345 ForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
2349 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2352 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2353 ForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf);
2357 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
2360 QuinaryForEachVoxelIfBody_4Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
2367 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
2370 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2371 ForEachVoxelIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
2375 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2379 ForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
2383 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2386 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2387 ForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf);
2395 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
2398 QuinaryForEachVoxelIfBody_4Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
2401 vf.join(body._VoxelFunc);
2402 of.join(body._OutsideFunc);
2406 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
2409 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2410 ForEachScalarIf<Domain>(im1, im2, im3, im4, im5, vf, of);
2414 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2418 ForEachScalarIf<Domain>(im1, im2, im3, im4, im5, vf, of);
2422 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2425 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2426 ForEachScalarIf<Domain>(im1, im2, im3, im4, im5, vf);
2430 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
2434 ForEachVoxelIf<Domain>(im1, im2, im3, im4, im5, vf, of);
2436 QuinaryForEachVoxelIfBody_4Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
2439 vf.join(body._VoxelFunc);
2440 of.join(body._OutsideFunc);
2445 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
2448 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2449 ForEachVoxelIf<Domain>(im1, im2, im3, im4, im5, vf, of);
2453 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2457 ForEachVoxelIf<Domain>(im1, im2, im3, im4, im5, vf, of);
2461 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2464 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2465 ForEachVoxelIf<Domain>(im1, im2, im3, im4, im5, vf);
2469 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
2472 QuinaryForEachVoxelIfBody_4Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
2479 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
2482 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2483 ForEachVoxelIf<Domain>(attr, im1, im2, im3, im4, im5, vf, of);
2487 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2491 ForEachVoxelIf<Domain>(attr, im1, im2, im3, im4, im5, vf, of);
2495 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2498 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2499 ForEachVoxelIf<Domain>(attr, im1, im2, im3, im4, im5, vf);
2503 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
2506 QuinaryForEachVoxelIfBody_4Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
2513 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
2516 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2517 ForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
2521 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
2524 QuinaryForEachVoxelIfBody_4Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
2531 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
2534 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2535 ForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
2539 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2543 ForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
2547 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2550 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2551 ForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf);
2555 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
2558 QuinaryForEachVoxelIfBody_4Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
2565 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
2568 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2569 ForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
2573 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2577 ForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
2581 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2584 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2585 ForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf);
2597 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2600 QuinaryForEachVoxelBody_4Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
2607 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2610 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2611 ParallelForEachScalar(*im1, *im2, *im3, *im4, *im5, vf);
2615 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2619 ParallelForEachScalar(*im1, *im2, *im3, *im4, *im5, vf);
2621 QuinaryForEachVoxelBody_4Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
2629 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2632 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2633 ParallelForEachVoxel(*im1, *im2, *im3, *im4, *im5, vf);
2637 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2640 QuinaryForEachVoxelBody_4Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
2642 if (VoxelFunc::IsReduction()) {
2659 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2662 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2663 ParallelForEachVoxel(attr, *im1, *im2, *im3, *im4, *im5, vf);
2667 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2670 QuinaryForEachVoxelBody_4Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
2676 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2679 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2680 ParallelForEachVoxel(re, *im1, *im2, *im3, *im4, *im5, vf);
2684 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2687 QuinaryForEachVoxelBody_4Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
2693 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2696 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2697 ParallelForEachVoxel(re, *im1, *im2, *im3, *im4, *im5, vf);
2701 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2704 QuinaryForEachVoxelBody_4Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
2710 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2713 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2714 ParallelForEachVoxel(re, *im1, *im2, *im3, *im4, *im5, vf);
2722 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2725 QuinaryForEachVoxelBody_4Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
2732 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2735 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2736 ParallelForEachScalar(im1, im2, im3, im4, im5, vf);
2740 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2744 ParallelForEachScalar(im1, im2, im3, im4, im5, vf);
2746 QuinaryForEachVoxelBody_4Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
2754 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2757 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2758 ParallelForEachVoxel(im1, im2, im3, im4, im5, vf);
2762 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2765 QuinaryForEachVoxelBody_4Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
2767 if (VoxelFunc::IsReduction()) {
2784 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2787 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2788 ParallelForEachVoxel(attr, im1, im2, im3, im4, im5, vf);
2792 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2795 QuinaryForEachVoxelBody_4Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
2801 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2804 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2805 ParallelForEachVoxel(re, im1, im2, im3, im4, im5, vf);
2809 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2812 QuinaryForEachVoxelBody_4Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
2818 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2821 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2822 ParallelForEachVoxel(re, im1, im2, im3, im4, im5, vf);
2826 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2829 QuinaryForEachVoxelBody_4Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
2835 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2838 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2839 ParallelForEachVoxel(re, im1, im2, im3, im4, im5, vf);
2851 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
2854 QuinaryForEachVoxelIfBody_4Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
2856 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
2866 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
2869 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2870 ParallelForEachScalarIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
2874 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2878 ParallelForEachScalarIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
2882 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2885 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2886 ParallelForEachScalarIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf);
2890 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
2894 ParallelForEachVoxelIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
2896 QuinaryForEachVoxelIfBody_4Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
2898 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
2909 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
2912 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2913 ParallelForEachVoxelIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
2917 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2921 ParallelForEachVoxelIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
2925 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2928 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2929 ParallelForEachVoxelIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf);
2933 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
2936 QuinaryForEachVoxelIfBody_4Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
2938 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
2956 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
2959 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2960 ParallelForEachVoxelIf<Domain>(attr, *im1, *im2, *im3, *im4, *im5, vf, of);
2964 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2968 ParallelForEachVoxelIf<Domain>(attr, *im1, *im2, *im3, *im4, *im5, vf, of);
2972 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
2975 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2976 ParallelForEachVoxelIf<Domain>(attr, *im1, *im2, *im3, *im4, *im5, vf);
2980 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
2983 QuinaryForEachVoxelIfBody_4Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
2984 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
2994 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
2997 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
2998 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
3002 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3006 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
3010 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3013 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
3014 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf);
3018 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
3021 QuinaryForEachVoxelIfBody_4Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
3022 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
3032 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
3035 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
3036 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
3040 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3044 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
3048 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3051 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
3052 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf);
3056 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
3059 QuinaryForEachVoxelIfBody_4Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
3060 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
3070 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
3073 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
3074 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
3078 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3082 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
3086 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3089 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
3090 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf);
3098 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
3101 QuinaryForEachVoxelIfBody_4Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
3103 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
3113 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
3116 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
3117 ParallelForEachScalarIf<Domain>(im1, im2, im3, im4, im5, vf, of);
3121 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3125 ParallelForEachScalarIf<Domain>(im1, im2, im3, im4, im5, vf, of);
3129 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3132 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
3133 ParallelForEachScalarIf<Domain>(im1, im2, im3, im4, im5, vf);
3137 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
3141 ParallelForEachVoxelIf<Domain>(im1, im2, im3, im4, im5, vf, of);
3143 QuinaryForEachVoxelIfBody_4Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
3145 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
3156 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
3159 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
3160 ParallelForEachVoxelIf<Domain>(im1, im2, im3, im4, im5, vf, of);
3164 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3168 ParallelForEachVoxelIf<Domain>(im1, im2, im3, im4, im5, vf, of);
3172 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3175 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
3176 ParallelForEachVoxelIf<Domain>(im1, im2, im3, im4, im5, vf);
3180 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
3183 QuinaryForEachVoxelIfBody_4Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
3185 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
3203 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
3206 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
3207 ParallelForEachVoxelIf<Domain>(attr, im1, im2, im3, im4, im5, vf, of);
3211 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3215 ParallelForEachVoxelIf<Domain>(attr, im1, im2, im3, im4, im5, vf, of);
3219 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3222 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
3223 ParallelForEachVoxelIf<Domain>(attr, im1, im2, im3, im4, im5, vf);
3227 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
3230 QuinaryForEachVoxelIfBody_4Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
3231 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
3241 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
3244 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
3245 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
3249 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3253 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
3257 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3260 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
3261 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf);
3265 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
3268 QuinaryForEachVoxelIfBody_4Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
3269 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
3279 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
3282 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
3283 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
3287 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3291 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
3295 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3298 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
3299 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf);
3303 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
3306 QuinaryForEachVoxelIfBody_4Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
3307 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
3317 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
3320 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
3321 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
3325 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3329 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
3333 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3336 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
3337 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf);
3348 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3365 ForEachVoxelBody<VoxelFunc>(vf, im1.Attributes()), im1(im1), im2(im2), im3(im3), im4(im4), im5(im5)
3371 ForEachVoxelBody<VoxelFunc>(o), im1(o.im1), im2(o.im2), im3(o.im3), im4(o.im4), im5(o.im5)
3377 ForEachVoxelBody<VoxelFunc>(o, s), im1(o.im1), im2(o.im2), im3(o.im3), im4(o.im4), im5(o.im5)
3389 const int T = (attr.
_dt ? attr.
_t : 1);
3391 for (
int l = 0; l < T; ++l)
3392 for (
int k = 0; k < attr.
_z; ++k)
3393 for (
int j = 0; j < attr.
_y; ++j)
3394 for (
int i = 0; i < attr.
_x; ++i, ++p1, ++p2, ++p3, ++p4, ++p5) {
3410 for (
int idx = re.begin(); idx < re.end(); ++idx, p1 += 1, p2 += 1, p3 += 1, p4 += 1, p5 += 1) {
3420 const int bi = re.cols().begin();
3421 const int bj = re.rows().begin();
3422 const int ei = re.cols().end();
3423 const int ej = re.rows().end();
3425 const int s1 = im5.
GetX() - (ei - bi);
3433 for (
int j = bj; j < ej; ++j, p1 += s1, p2 += s1, p3 += s1, p4 += s1, p5 += s1)
3434 for (
int i = bi; i < ei; ++i, p1 += 1, p2 += 1, p3 += 1, p4 += 1, p5 += 1) {
3444 const int bi = re.cols ().begin();
3445 const int bj = re.rows ().begin();
3446 const int bk = re.pages().begin();
3447 const int ei = re.cols ().end();
3448 const int ej = re.rows ().end();
3449 const int ek = re.pages().end();
3451 const int s1 = im5.
GetX() - (ei - bi);
3452 const int s2 = (im5.
GetY() - (ej - bj)) * im5.
GetX();
3460 for (
int k = bk; k < ek; ++k, p1 += s2, p2 += s2, p3 += s2, p4 += s2, p5 += s2)
3461 for (
int j = bj; j < ej; ++j, p1 += s1, p2 += s1, p3 += s1, p4 += s1, p5 += s1)
3462 for (
int i = bi; i < ei; ++i, p1 += 1, p2 += 1, p3 += 1, p4 += 1, p5 += 1) {
3474 template <
class T1,
class T2,
class T3,
class T4,
class T5,
3491 VoxelFunc &vf, OutsideFunc &of)
3493 ForEachVoxelIfBody<VoxelFunc, OutsideFunc>(vf, of, im1.Attributes()), im1(im1), im2(im2), im3(im3), im4(im4), im5(im5)
3499 ForEachVoxelIfBody<VoxelFunc, OutsideFunc>(o), im1(o.im1), im2(o.im2), im3(o.im3), im4(o.im4), im5(o.im5)
3505 ForEachVoxelIfBody<VoxelFunc, OutsideFunc>(o, s), im1(o.im1), im2(o.im2), im3(o.im3), im4(o.im4), im5(o.im5)
3517 const int T = (attr.
_dt ? attr.
_t : 1);
3519 for (
int l = 0; l < T; ++l)
3520 for (
int k = 0; k < attr.
_z; ++k)
3521 for (
int j = 0; j < attr.
_y; ++j)
3522 for (
int i = 0; i < attr.
_x; ++i, ++p1, ++p2, ++p3, ++p4, ++p5) {
3523 if (Domain::IsInside(im5, i, j, k, l, p5)) {
3540 for (
int idx = re.begin(); idx < re.end(); ++idx, p1 += 1, p2 += 1, p3 += 1, p4 += 1, p5 += 1) {
3541 if (Domain::IsInside(im5, idx, p5)) {
3552 const int bi = re.cols().begin();
3553 const int bj = re.rows().begin();
3554 const int ei = re.cols().end();
3555 const int ej = re.rows().end();
3557 const int s1 = im5.
GetX() - (ei - bi);
3565 for (
int j = bj; j < ej; ++j, p1 += s1, p2 += s1, p3 += s1, p4 += s1, p5 += s1)
3566 for (
int i = bi; i < ei; ++i, p1 += 1, p2 += 1, p3 += 1, p4 += 1, p5 += 1) {
3567 if (Domain::IsInside(im5, i, j, this->_k, this->
_l, p5)) {
3578 const int bi = re.cols ().begin();
3579 const int bj = re.rows ().begin();
3580 const int bk = re.pages().begin();
3581 const int ei = re.cols ().end();
3582 const int ej = re.rows ().end();
3583 const int ek = re.pages().end();
3585 const int s1 = im5.
GetX() - (ei - bi);
3586 const int s2 = (im5.
GetY() - (ej - bj)) * im5.
GetX();
3594 for (
int k = bk; k < ek; ++k, p1 += s2, p2 += s2, p3 += s2, p4 += s2, p5 += s2)
3595 for (
int j = bj; j < ej; ++j, p1 += s1, p2 += s1, p3 += s1, p4 += s1, p5 += s1)
3596 for (
int i = bi; i < ei; ++i, p1 += 1, p2 += 1, p3 += 1, p4 += 1, p5 += 1) {
3597 if (Domain::IsInside(im5, i, j, k, this->
_l, p5)) {
3615 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3618 QuinaryForEachVoxelBody_3Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
3621 vf.join(body._VoxelFunc);
3625 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3628 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
3629 ForEachScalar(*im1, *im2, *im3, *im4, *im5, vf);
3633 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3637 ForEachScalar(*im1, *im2, *im3, *im4, *im5, vf);
3639 QuinaryForEachVoxelBody_3Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
3642 vf.join(body._VoxelFunc);
3647 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3650 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
3651 ForEachVoxel(*im1, *im2, *im3, *im4, *im5, vf);
3655 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3658 QuinaryForEachVoxelBody_3Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
3664 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3667 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
3668 ForEachVoxel(attr, *im1, *im2, *im3, *im4, *im5, vf);
3672 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3675 QuinaryForEachVoxelBody_3Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
3681 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3684 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
3685 ForEachVoxel(re, *im1, *im2, *im3, *im4, *im5, vf);
3689 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3692 QuinaryForEachVoxelBody_3Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
3698 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3701 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
3702 ForEachVoxel(re, *im1, *im2, *im3, *im4, *im5, vf);
3706 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3709 QuinaryForEachVoxelBody_3Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
3715 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3718 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
3719 ForEachVoxel(re, *im1, *im2, *im3, *im4, *im5, vf);
3727 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3730 QuinaryForEachVoxelBody_3Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
3733 vf.join(body._VoxelFunc);
3737 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3740 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
3741 ForEachScalar(im1, im2, im3, im4, im5, vf);
3745 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3749 ForEachScalar(im1, im2, im3, im4, im5, vf);
3751 QuinaryForEachVoxelBody_3Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
3754 vf.join(body._VoxelFunc);
3759 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3762 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
3763 ForEachVoxel(im1, im2, im3, im4, im5, vf);
3767 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3770 QuinaryForEachVoxelBody_3Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
3776 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3779 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
3780 ForEachVoxel(attr, im1, im2, im3, im4, im5, vf);
3784 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3787 QuinaryForEachVoxelBody_3Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
3793 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3796 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
3797 ForEachVoxel(re, im1, im2, im3, im4, im5, vf);
3801 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3804 QuinaryForEachVoxelBody_3Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
3810 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3813 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
3814 ForEachVoxel(re, im1, im2, im3, im4, im5, vf);
3818 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3821 QuinaryForEachVoxelBody_3Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
3827 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3830 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
3831 ForEachVoxel(re, im1, im2, im3, im4, im5, vf);
3843 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
3846 QuinaryForEachVoxelIfBody_3Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
3849 vf.join(body._VoxelFunc);
3850 of.join(body._OutsideFunc);
3854 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
3857 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
3858 ForEachScalarIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
3862 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3866 ForEachScalarIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
3870 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3873 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
3874 ForEachScalarIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf);
3878 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
3882 ForEachScalarIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
3884 QuinaryForEachVoxelIfBody_3Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
3887 vf.join(body._VoxelFunc);
3888 of.join(body._OutsideFunc);
3893 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
3896 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
3897 ForEachVoxelIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
3901 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3905 ForEachVoxelIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
3909 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3912 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
3913 ForEachVoxelIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf);
3917 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
3920 QuinaryForEachVoxelIfBody_3Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
3927 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
3930 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
3931 ForEachVoxelIf<Domain>(attr, *im1, *im2, *im3, *im4, *im5, vf, of);
3935 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3939 ForEachVoxelIf<Domain>(attr, *im1, *im2, *im3, *im4, *im5, vf, of);
3943 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3946 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
3947 ForEachVoxelIf<Domain>(attr, *im1, *im2, *im3, *im4, *im5, vf);
3951 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
3954 QuinaryForEachVoxelIfBody_3Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
3961 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
3964 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
3965 ForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
3969 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
3972 QuinaryForEachVoxelIfBody_3Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
3979 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
3982 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
3983 ForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
3987 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3991 ForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
3995 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
3998 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
3999 ForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf);
4003 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
4006 QuinaryForEachVoxelIfBody_3Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
4013 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
4016 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
4017 ForEachVoxelIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
4021 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4025 ForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
4029 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4032 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
4033 ForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf);
4041 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
4044 QuinaryForEachVoxelIfBody_3Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
4047 vf.join(body._VoxelFunc);
4048 of.join(body._OutsideFunc);
4052 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
4055 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
4056 ForEachScalarIf<Domain>(im1, im2, im3, im4, im5, vf, of);
4060 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4064 ForEachScalarIf<Domain>(im1, im2, im3, im4, im5, vf, of);
4068 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4071 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
4072 ForEachScalarIf<Domain>(im1, im2, im3, im4, im5, vf);
4076 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
4080 ForEachVoxelIf<Domain>(im1, im2, im3, im4, im5, vf, of);
4082 QuinaryForEachVoxelIfBody_3Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
4085 vf.join(body._VoxelFunc);
4086 of.join(body._OutsideFunc);
4091 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
4094 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
4095 ForEachVoxelIf<Domain>(im1, im2, im3, im4, im5, vf, of);
4099 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4103 ForEachVoxelIf<Domain>(im1, im2, im3, im4, im5, vf, of);
4107 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4110 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
4111 ForEachVoxelIf<Domain>(im1, im2, im3, im4, im5, vf);
4115 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
4118 QuinaryForEachVoxelIfBody_3Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
4125 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
4128 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
4129 ForEachVoxelIf<Domain>(attr, im1, im2, im3, im4, im5, vf, of);
4133 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4137 ForEachVoxelIf<Domain>(attr, im1, im2, im3, im4, im5, vf, of);
4141 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4144 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
4145 ForEachVoxelIf<Domain>(attr, im1, im2, im3, im4, im5, vf);
4149 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
4152 QuinaryForEachVoxelIfBody_3Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
4159 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
4162 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
4163 ForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
4167 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
4170 QuinaryForEachVoxelIfBody_3Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
4177 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
4180 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
4181 ForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
4185 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4189 ForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
4193 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4196 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
4197 ForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf);
4201 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
4204 QuinaryForEachVoxelIfBody_3Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
4211 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
4214 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
4215 ForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
4219 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4223 ForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
4227 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4230 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
4231 ForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf);
4243 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4246 QuinaryForEachVoxelBody_3Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
4253 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4256 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
4257 ParallelForEachScalar(*im1, *im2, *im3, *im4, *im5, vf);
4261 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4265 ParallelForEachScalar(*im1, *im2, *im3, *im4, *im5, vf);
4267 QuinaryForEachVoxelBody_3Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
4275 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4278 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
4279 ParallelForEachVoxel(*im1, *im2, *im3, *im4, *im5, vf);
4283 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4286 QuinaryForEachVoxelBody_3Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
4288 if (VoxelFunc::IsReduction()) {
4305 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4308 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
4309 ParallelForEachVoxel(attr, *im1, *im2, *im3, *im4, *im5, vf);
4313 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4316 QuinaryForEachVoxelBody_3Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
4322 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4325 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
4326 ParallelForEachVoxel(re, *im1, *im2, *im3, *im4, *im5, vf);
4330 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4333 QuinaryForEachVoxelBody_3Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
4339 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4342 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
4343 ParallelForEachVoxel(re, *im1, *im2, *im3, *im4, *im5, vf);
4347 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4350 QuinaryForEachVoxelBody_3Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
4356 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4359 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
4360 ParallelForEachVoxel(re, *im1, *im2, *im3, *im4, *im5, vf);
4368 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4371 QuinaryForEachVoxelBody_3Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
4378 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4381 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
4382 ParallelForEachScalar(im1, im2, im3, im4, im5, vf);
4386 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4390 ParallelForEachScalar(im1, im2, im3, im4, im5, vf);
4392 QuinaryForEachVoxelBody_3Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
4400 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4403 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
4404 ParallelForEachVoxel(im1, im2, im3, im4, im5, vf);
4408 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4411 QuinaryForEachVoxelBody_3Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
4413 if (VoxelFunc::IsReduction()) {
4430 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4433 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
4434 ParallelForEachVoxel(attr, im1, im2, im3, im4, im5, vf);
4438 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4441 QuinaryForEachVoxelBody_3Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
4447 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4450 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
4451 ParallelForEachVoxel(re, im1, im2, im3, im4, im5, vf);
4455 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4458 QuinaryForEachVoxelBody_3Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
4464 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4467 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
4468 ParallelForEachVoxel(re, im1, im2, im3, im4, im5, vf);
4472 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4475 QuinaryForEachVoxelBody_3Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
4481 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4484 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
4485 ParallelForEachVoxel(re, im1, im2, im3, im4, im5, vf);
4497 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
4500 QuinaryForEachVoxelIfBody_3Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
4502 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
4512 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
4515 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
4516 ParallelForEachScalarIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
4520 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4524 ParallelForEachScalarIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
4528 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4531 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
4532 ParallelForEachScalarIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf);
4536 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
4540 ParallelForEachVoxelIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
4542 QuinaryForEachVoxelIfBody_3Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
4544 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
4555 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
4558 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
4559 ParallelForEachVoxelIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
4563 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4567 ParallelForEachVoxelIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
4571 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4574 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
4575 ParallelForEachVoxelIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf);
4579 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
4582 QuinaryForEachVoxelIfBody_3Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
4584 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
4602 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
4605 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
4606 ParallelForEachVoxelIf<Domain>(attr, *im1, *im2, *im3, *im4, *im5, vf, of);
4610 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4614 ParallelForEachVoxelIf<Domain>(attr, *im1, *im2, *im3, *im4, *im5, vf, of);
4618 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4621 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
4622 ParallelForEachVoxelIf<Domain>(attr, *im1, *im2, *im3, *im4, *im5, vf);
4626 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
4629 QuinaryForEachVoxelIfBody_3Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
4630 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
4640 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
4643 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
4644 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
4648 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4652 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
4656 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4659 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
4660 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf);
4664 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
4667 QuinaryForEachVoxelIfBody_3Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
4668 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
4678 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
4681 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
4682 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
4686 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4690 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
4694 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4697 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
4698 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf);
4702 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
4705 QuinaryForEachVoxelIfBody_3Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
4706 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
4716 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
4719 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
4720 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
4724 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4728 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
4732 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4735 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
4736 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf);
4744 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
4747 QuinaryForEachVoxelIfBody_3Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
4749 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
4759 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
4762 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
4763 ParallelForEachScalarIf<Domain>(im1, im2, im3, im4, im5, vf, of);
4767 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4771 ParallelForEachScalarIf<Domain>(im1, im2, im3, im4, im5, vf, of);
4775 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4778 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
4779 ParallelForEachScalarIf<Domain>(im1, im2, im3, im4, im5, vf);
4783 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
4787 ParallelForEachVoxelIf<Domain>(im1, im2, im3, im4, im5, vf, of);
4789 QuinaryForEachVoxelIfBody_3Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
4791 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
4802 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
4805 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
4806 ParallelForEachVoxelIf<Domain>(im1, im2, im3, im4, im5, vf, of);
4810 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4814 ParallelForEachVoxelIf<Domain>(im1, im2, im3, im4, im5, vf, of);
4818 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4821 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
4822 ParallelForEachVoxelIf<Domain>(im1, im2, im3, im4, im5, vf);
4826 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
4829 QuinaryForEachVoxelIfBody_3Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
4831 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
4849 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
4852 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
4853 ParallelForEachVoxelIf<Domain>(attr, im1, im2, im3, im4, im5, vf, of);
4857 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4861 ParallelForEachVoxelIf<Domain>(attr, im1, im2, im3, im4, im5, vf, of);
4865 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4868 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
4869 ParallelForEachVoxelIf<Domain>(attr, im1, im2, im3, im4, im5, vf);
4873 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
4876 QuinaryForEachVoxelIfBody_3Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
4877 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
4887 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
4890 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
4891 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
4895 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4899 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
4903 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4906 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
4907 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf);
4911 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
4914 QuinaryForEachVoxelIfBody_3Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
4915 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
4925 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
4928 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
4929 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
4933 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4937 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
4941 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4944 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
4945 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf);
4949 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
4952 QuinaryForEachVoxelIfBody_3Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
4953 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
4963 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
4966 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
4967 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
4971 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4975 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
4979 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
4982 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
4983 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf);
4994 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5011 ForEachVoxelBody<VoxelFunc>(vf, im1.Attributes()), im1(im1), im2(im2), im3(im3), im4(im4), im5(im5)
5017 ForEachVoxelBody<VoxelFunc>(o), im1(o.im1), im2(o.im2), im3(o.im3), im4(o.im4), im5(o.im5)
5023 ForEachVoxelBody<VoxelFunc>(o, s), im1(o.im1), im2(o.im2), im3(o.im3), im4(o.im4), im5(o.im5)
5035 const int T = (attr.
_dt ? attr.
_t : 1);
5037 for (
int l = 0; l < T; ++l)
5038 for (
int k = 0; k < attr.
_z; ++k)
5039 for (
int j = 0; j < attr.
_y; ++j)
5040 for (
int i = 0; i < attr.
_x; ++i, ++p1, ++p2, ++p3, ++p4, ++p5) {
5056 for (
int idx = re.begin(); idx < re.end(); ++idx, p1 += 1, p2 += 1, p3 += 1, p4 += 1, p5 += 1) {
5066 const int bi = re.cols().begin();
5067 const int bj = re.rows().begin();
5068 const int ei = re.cols().end();
5069 const int ej = re.rows().end();
5071 const int s1 = im5.
GetX() - (ei - bi);
5079 for (
int j = bj; j < ej; ++j, p1 += s1, p2 += s1, p3 += s1, p4 += s1, p5 += s1)
5080 for (
int i = bi; i < ei; ++i, p1 += 1, p2 += 1, p3 += 1, p4 += 1, p5 += 1) {
5090 const int bi = re.cols ().begin();
5091 const int bj = re.rows ().begin();
5092 const int bk = re.pages().begin();
5093 const int ei = re.cols ().end();
5094 const int ej = re.rows ().end();
5095 const int ek = re.pages().end();
5097 const int s1 = im5.
GetX() - (ei - bi);
5098 const int s2 = (im5.
GetY() - (ej - bj)) * im5.
GetX();
5106 for (
int k = bk; k < ek; ++k, p1 += s2, p2 += s2, p3 += s2, p4 += s2, p5 += s2)
5107 for (
int j = bj; j < ej; ++j, p1 += s1, p2 += s1, p3 += s1, p4 += s1, p5 += s1)
5108 for (
int i = bi; i < ei; ++i, p1 += 1, p2 += 1, p3 += 1, p4 += 1, p5 += 1) {
5120 template <
class T1,
class T2,
class T3,
class T4,
class T5,
5137 VoxelFunc &vf, OutsideFunc &of)
5139 ForEachVoxelIfBody<VoxelFunc, OutsideFunc>(vf, of, im1.Attributes()), im1(im1), im2(im2), im3(im3), im4(im4), im5(im5)
5145 ForEachVoxelIfBody<VoxelFunc, OutsideFunc>(o), im1(o.im1), im2(o.im2), im3(o.im3), im4(o.im4), im5(o.im5)
5151 ForEachVoxelIfBody<VoxelFunc, OutsideFunc>(o, s), im1(o.im1), im2(o.im2), im3(o.im3), im4(o.im4), im5(o.im5)
5163 const int T = (attr.
_dt ? attr.
_t : 1);
5165 for (
int l = 0; l < T; ++l)
5166 for (
int k = 0; k < attr.
_z; ++k)
5167 for (
int j = 0; j < attr.
_y; ++j)
5168 for (
int i = 0; i < attr.
_x; ++i, ++p1, ++p2, ++p3, ++p4, ++p5) {
5169 if (Domain::IsInside(im5, i, j, k, l, p5)) {
5186 for (
int idx = re.begin(); idx < re.end(); ++idx, p1 += 1, p2 += 1, p3 += 1, p4 += 1, p5 += 1) {
5187 if (Domain::IsInside(im5, idx, p5)) {
5198 const int bi = re.cols().begin();
5199 const int bj = re.rows().begin();
5200 const int ei = re.cols().end();
5201 const int ej = re.rows().end();
5203 const int s1 = im5.
GetX() - (ei - bi);
5211 for (
int j = bj; j < ej; ++j, p1 += s1, p2 += s1, p3 += s1, p4 += s1, p5 += s1)
5212 for (
int i = bi; i < ei; ++i, p1 += 1, p2 += 1, p3 += 1, p4 += 1, p5 += 1) {
5213 if (Domain::IsInside(im5, i, j, this->_k, this->
_l, p5)) {
5224 const int bi = re.cols ().begin();
5225 const int bj = re.rows ().begin();
5226 const int bk = re.pages().begin();
5227 const int ei = re.cols ().end();
5228 const int ej = re.rows ().end();
5229 const int ek = re.pages().end();
5231 const int s1 = im5.
GetX() - (ei - bi);
5232 const int s2 = (im5.
GetY() - (ej - bj)) * im5.
GetX();
5240 for (
int k = bk; k < ek; ++k, p1 += s2, p2 += s2, p3 += s2, p4 += s2, p5 += s2)
5241 for (
int j = bj; j < ej; ++j, p1 += s1, p2 += s1, p3 += s1, p4 += s1, p5 += s1)
5242 for (
int i = bi; i < ei; ++i, p1 += 1, p2 += 1, p3 += 1, p4 += 1, p5 += 1) {
5243 if (Domain::IsInside(im5, i, j, k, this->
_l, p5)) {
5261 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5264 QuinaryForEachVoxelBody_2Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
5267 vf.join(body._VoxelFunc);
5271 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5274 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
5275 ForEachScalar(*im1, *im2, *im3, *im4, *im5, vf);
5279 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5283 ForEachScalar(*im1, *im2, *im3, *im4, *im5, vf);
5285 QuinaryForEachVoxelBody_2Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
5288 vf.join(body._VoxelFunc);
5293 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5296 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
5297 ForEachVoxel(*im1, *im2, *im3, *im4, *im5, vf);
5301 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5304 QuinaryForEachVoxelBody_2Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
5310 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5313 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
5314 ForEachVoxel(attr, *im1, *im2, *im3, *im4, *im5, vf);
5318 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5321 QuinaryForEachVoxelBody_2Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
5327 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5330 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
5331 ForEachVoxel(re, *im1, *im2, *im3, *im4, *im5, vf);
5335 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5338 QuinaryForEachVoxelBody_2Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
5344 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5347 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
5348 ForEachVoxel(re, *im1, *im2, *im3, *im4, *im5, vf);
5352 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5355 QuinaryForEachVoxelBody_2Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
5361 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5364 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
5365 ForEachVoxel(re, *im1, *im2, *im3, *im4, *im5, vf);
5373 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5376 QuinaryForEachVoxelBody_2Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
5379 vf.join(body._VoxelFunc);
5383 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5386 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
5387 ForEachScalar(im1, im2, im3, im4, im5, vf);
5391 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5395 ForEachScalar(im1, im2, im3, im4, im5, vf);
5397 QuinaryForEachVoxelBody_2Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
5400 vf.join(body._VoxelFunc);
5405 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5408 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
5409 ForEachVoxel(im1, im2, im3, im4, im5, vf);
5413 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5416 QuinaryForEachVoxelBody_2Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
5422 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5425 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
5426 ForEachVoxel(attr, im1, im2, im3, im4, im5, vf);
5430 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5433 QuinaryForEachVoxelBody_2Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
5439 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5442 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
5443 ForEachVoxel(re, im1, im2, im3, im4, im5, vf);
5447 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5450 QuinaryForEachVoxelBody_2Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
5456 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5459 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
5460 ForEachVoxel(re, im1, im2, im3, im4, im5, vf);
5464 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5467 QuinaryForEachVoxelBody_2Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
5473 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5476 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
5477 ForEachVoxel(re, im1, im2, im3, im4, im5, vf);
5489 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
5492 QuinaryForEachVoxelIfBody_2Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
5495 vf.join(body._VoxelFunc);
5496 of.join(body._OutsideFunc);
5500 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
5503 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
5504 ForEachScalarIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
5508 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5512 ForEachScalarIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
5516 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5519 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
5520 ForEachScalarIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf);
5524 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
5528 ForEachScalarIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
5530 QuinaryForEachVoxelIfBody_2Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
5533 vf.join(body._VoxelFunc);
5534 of.join(body._OutsideFunc);
5539 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
5542 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
5543 ForEachVoxelIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
5547 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5551 ForEachVoxelIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
5555 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5558 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
5559 ForEachVoxelIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf);
5563 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
5566 QuinaryForEachVoxelIfBody_2Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
5573 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
5576 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
5577 ForEachVoxelIf<Domain>(attr, *im1, *im2, *im3, *im4, *im5, vf, of);
5581 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5585 ForEachVoxelIf<Domain>(attr, *im1, *im2, *im3, *im4, *im5, vf, of);
5589 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5592 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
5593 ForEachVoxelIf<Domain>(attr, *im1, *im2, *im3, *im4, *im5, vf);
5597 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
5600 QuinaryForEachVoxelIfBody_2Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
5607 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
5610 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
5611 ForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
5615 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
5618 QuinaryForEachVoxelIfBody_2Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
5625 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
5628 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
5629 ForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
5633 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5637 ForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
5641 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5644 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
5645 ForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf);
5649 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
5652 QuinaryForEachVoxelIfBody_2Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
5659 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
5662 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
5663 ForEachVoxelIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
5667 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5671 ForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
5675 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5678 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
5679 ForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf);
5687 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
5690 QuinaryForEachVoxelIfBody_2Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
5693 vf.join(body._VoxelFunc);
5694 of.join(body._OutsideFunc);
5698 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
5701 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
5702 ForEachScalarIf<Domain>(im1, im2, im3, im4, im5, vf, of);
5706 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5710 ForEachScalarIf<Domain>(im1, im2, im3, im4, im5, vf, of);
5714 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5717 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
5718 ForEachScalarIf<Domain>(im1, im2, im3, im4, im5, vf);
5722 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
5726 ForEachVoxelIf<Domain>(im1, im2, im3, im4, im5, vf, of);
5728 QuinaryForEachVoxelIfBody_2Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
5731 vf.join(body._VoxelFunc);
5732 of.join(body._OutsideFunc);
5737 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
5740 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
5741 ForEachVoxelIf<Domain>(im1, im2, im3, im4, im5, vf, of);
5745 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5749 ForEachVoxelIf<Domain>(im1, im2, im3, im4, im5, vf, of);
5753 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5756 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
5757 ForEachVoxelIf<Domain>(im1, im2, im3, im4, im5, vf);
5761 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
5764 QuinaryForEachVoxelIfBody_2Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
5771 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
5774 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
5775 ForEachVoxelIf<Domain>(attr, im1, im2, im3, im4, im5, vf, of);
5779 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5783 ForEachVoxelIf<Domain>(attr, im1, im2, im3, im4, im5, vf, of);
5787 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5790 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
5791 ForEachVoxelIf<Domain>(attr, im1, im2, im3, im4, im5, vf);
5795 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
5798 QuinaryForEachVoxelIfBody_2Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
5805 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
5808 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
5809 ForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
5813 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
5816 QuinaryForEachVoxelIfBody_2Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
5823 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
5826 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
5827 ForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
5831 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5835 ForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
5839 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5842 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
5843 ForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf);
5847 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
5850 QuinaryForEachVoxelIfBody_2Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
5857 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
5860 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
5861 ForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
5865 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5869 ForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
5873 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5876 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
5877 ForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf);
5889 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5892 QuinaryForEachVoxelBody_2Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
5899 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5902 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
5903 ParallelForEachScalar(*im1, *im2, *im3, *im4, *im5, vf);
5907 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5911 ParallelForEachScalar(*im1, *im2, *im3, *im4, *im5, vf);
5913 QuinaryForEachVoxelBody_2Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
5921 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5924 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
5925 ParallelForEachVoxel(*im1, *im2, *im3, *im4, *im5, vf);
5929 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5932 QuinaryForEachVoxelBody_2Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
5934 if (VoxelFunc::IsReduction()) {
5951 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5954 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
5955 ParallelForEachVoxel(attr, *im1, *im2, *im3, *im4, *im5, vf);
5959 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5962 QuinaryForEachVoxelBody_2Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
5968 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5971 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
5972 ParallelForEachVoxel(re, *im1, *im2, *im3, *im4, *im5, vf);
5976 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5979 QuinaryForEachVoxelBody_2Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
5985 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5988 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
5989 ParallelForEachVoxel(re, *im1, *im2, *im3, *im4, *im5, vf);
5993 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
5996 QuinaryForEachVoxelBody_2Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
6002 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
6005 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
6006 ParallelForEachVoxel(re, *im1, *im2, *im3, *im4, *im5, vf);
6014 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
6017 QuinaryForEachVoxelBody_2Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
6024 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
6027 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
6028 ParallelForEachScalar(im1, im2, im3, im4, im5, vf);
6032 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
6036 ParallelForEachScalar(im1, im2, im3, im4, im5, vf);
6038 QuinaryForEachVoxelBody_2Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
6046 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
6049 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
6050 ParallelForEachVoxel(im1, im2, im3, im4, im5, vf);
6054 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
6057 QuinaryForEachVoxelBody_2Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
6059 if (VoxelFunc::IsReduction()) {
6076 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
6079 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
6080 ParallelForEachVoxel(attr, im1, im2, im3, im4, im5, vf);
6084 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
6087 QuinaryForEachVoxelBody_2Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
6093 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
6096 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
6097 ParallelForEachVoxel(re, im1, im2, im3, im4, im5, vf);
6101 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
6104 QuinaryForEachVoxelBody_2Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
6110 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
6113 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
6114 ParallelForEachVoxel(re, im1, im2, im3, im4, im5, vf);
6118 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
6121 QuinaryForEachVoxelBody_2Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
6127 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
6130 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
6131 ParallelForEachVoxel(re, im1, im2, im3, im4, im5, vf);
6143 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
6146 QuinaryForEachVoxelIfBody_2Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
6148 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
6158 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
6161 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
6162 ParallelForEachScalarIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
6166 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
6170 ParallelForEachScalarIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
6174 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
6177 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
6178 ParallelForEachScalarIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf);
6182 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
6186 ParallelForEachVoxelIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
6188 QuinaryForEachVoxelIfBody_2Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
6190 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
6201 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
6204 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
6205 ParallelForEachVoxelIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
6209 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
6213 ParallelForEachVoxelIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
6217 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
6220 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
6221 ParallelForEachVoxelIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf);
6225 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
6228 QuinaryForEachVoxelIfBody_2Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
6230 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
6248 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
6251 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
6252 ParallelForEachVoxelIf<Domain>(attr, *im1, *im2, *im3, *im4, *im5, vf, of);
6256 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
6260 ParallelForEachVoxelIf<Domain>(attr, *im1, *im2, *im3, *im4, *im5, vf, of);
6264 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
6267 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
6268 ParallelForEachVoxelIf<Domain>(attr, *im1, *im2, *im3, *im4, *im5, vf);
6272 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
6275 QuinaryForEachVoxelIfBody_2Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
6276 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
6286 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
6289 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
6290 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
6294 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
6298 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
6302 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
6305 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
6306 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf);
6310 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
6313 QuinaryForEachVoxelIfBody_2Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
6314 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
6324 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
6327 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
6328 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
6332 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
6336 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
6340 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
6343 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
6344 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf);
6348 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
6351 QuinaryForEachVoxelIfBody_2Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
6352 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
6362 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
6365 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
6366 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
6370 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
6374 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
6378 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
6381 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
6382 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf);
6390 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
6393 QuinaryForEachVoxelIfBody_2Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
6395 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
6405 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
6408 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
6409 ParallelForEachScalarIf<Domain>(im1, im2, im3, im4, im5, vf, of);
6413 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
6417 ParallelForEachScalarIf<Domain>(im1, im2, im3, im4, im5, vf, of);
6421 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
6424 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
6425 ParallelForEachScalarIf<Domain>(im1, im2, im3, im4, im5, vf);
6429 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
6433 ParallelForEachVoxelIf<Domain>(im1, im2, im3, im4, im5, vf, of);
6435 QuinaryForEachVoxelIfBody_2Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
6437 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
6448 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
6451 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
6452 ParallelForEachVoxelIf<Domain>(im1, im2, im3, im4, im5, vf, of);
6456 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
6460 ParallelForEachVoxelIf<Domain>(im1, im2, im3, im4, im5, vf, of);
6464 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
6467 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
6468 ParallelForEachVoxelIf<Domain>(im1, im2, im3, im4, im5, vf);
6472 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
6475 QuinaryForEachVoxelIfBody_2Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
6477 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
6495 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
6498 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
6499 ParallelForEachVoxelIf<Domain>(attr, im1, im2, im3, im4, im5, vf, of);
6503 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
6507 ParallelForEachVoxelIf<Domain>(attr, im1, im2, im3, im4, im5, vf, of);
6511 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
6514 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
6515 ParallelForEachVoxelIf<Domain>(attr, im1, im2, im3, im4, im5, vf);
6519 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
6522 QuinaryForEachVoxelIfBody_2Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
6523 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
6533 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
6536 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
6537 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
6541 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
6545 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
6549 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
6552 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
6553 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf);
6557 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
6560 QuinaryForEachVoxelIfBody_2Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
6561 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
6571 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
6574 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
6575 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
6579 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
6583 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
6587 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
6590 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
6591 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf);
6595 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
6598 QuinaryForEachVoxelIfBody_2Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
6599 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
6609 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
6612 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
6613 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
6617 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
6621 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
6625 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
6628 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
6629 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf);
6640 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
6657 ForEachVoxelBody<VoxelFunc>(vf, im1.Attributes()), im1(im1), im2(im2), im3(im3), im4(im4), im5(im5)
6663 ForEachVoxelBody<VoxelFunc>(o), im1(o.im1), im2(o.im2), im3(o.im3), im4(o.im4), im5(o.im5)
6669 ForEachVoxelBody<VoxelFunc>(o, s), im1(o.im1), im2(o.im2), im3(o.im3), im4(o.im4), im5(o.im5)
6681 const int T = (attr.
_dt ? attr.
_t : 1);
6683 for (
int l = 0; l < T; ++l)
6684 for (
int k = 0; k < attr.
_z; ++k)
6685 for (
int j = 0; j < attr.
_y; ++j)
6686 for (
int i = 0; i < attr.
_x; ++i, ++p1, ++p2, ++p3, ++p4, ++p5) {
6702 for (
int idx = re.begin(); idx < re.end(); ++idx, p1 += 1, p2 += 1, p3 += 1, p4 += 1, p5 += 1) {
6712 const int bi = re.cols().begin();
6713 const int bj = re.rows().begin();
6714 const int ei = re.cols().end();
6715 const int ej = re.rows().end();
6717 const int s1 = im5.
GetX() - (ei - bi);
6725 for (
int j = bj; j < ej; ++j, p1 += s1, p2 += s1, p3 += s1, p4 += s1, p5 += s1)
6726 for (
int i = bi; i < ei; ++i, p1 += 1, p2 += 1, p3 += 1, p4 += 1, p5 += 1) {
6736 const int bi = re.cols ().begin();
6737 const int bj = re.rows ().begin();
6738 const int bk = re.pages().begin();
6739 const int ei = re.cols ().end();
6740 const int ej = re.rows ().end();
6741 const int ek = re.pages().end();
6743 const int s1 = im5.
GetX() - (ei - bi);
6744 const int s2 = (im5.
GetY() - (ej - bj)) * im5.
GetX();
6752 for (
int k = bk; k < ek; ++k, p1 += s2, p2 += s2, p3 += s2, p4 += s2, p5 += s2)
6753 for (
int j = bj; j < ej; ++j, p1 += s1, p2 += s1, p3 += s1, p4 += s1, p5 += s1)
6754 for (
int i = bi; i < ei; ++i, p1 += 1, p2 += 1, p3 += 1, p4 += 1, p5 += 1) {
6766 template <
class T1,
class T2,
class T3,
class T4,
class T5,
6783 VoxelFunc &vf, OutsideFunc &of)
6785 ForEachVoxelIfBody<VoxelFunc, OutsideFunc>(vf, of, im1.Attributes()), im1(im1), im2(im2), im3(im3), im4(im4), im5(im5)
6791 ForEachVoxelIfBody<VoxelFunc, OutsideFunc>(o), im1(o.im1), im2(o.im2), im3(o.im3), im4(o.im4), im5(o.im5)
6797 ForEachVoxelIfBody<VoxelFunc, OutsideFunc>(o, s), im1(o.im1), im2(o.im2), im3(o.im3), im4(o.im4), im5(o.im5)
6809 const int T = (attr.
_dt ? attr.
_t : 1);
6811 for (
int l = 0; l < T; ++l)
6812 for (
int k = 0; k < attr.
_z; ++k)
6813 for (
int j = 0; j < attr.
_y; ++j)
6814 for (
int i = 0; i < attr.
_x; ++i, ++p1, ++p2, ++p3, ++p4, ++p5) {
6815 if (Domain::IsInside(im5, i, j, k, l, p5)) {
6832 for (
int idx = re.begin(); idx < re.end(); ++idx, p1 += 1, p2 += 1, p3 += 1, p4 += 1, p5 += 1) {
6833 if (Domain::IsInside(im5, idx, p5)) {
6844 const int bi = re.cols().begin();
6845 const int bj = re.rows().begin();
6846 const int ei = re.cols().end();
6847 const int ej = re.rows().end();
6849 const int s1 = im5.
GetX() - (ei - bi);
6857 for (
int j = bj; j < ej; ++j, p1 += s1, p2 += s1, p3 += s1, p4 += s1, p5 += s1)
6858 for (
int i = bi; i < ei; ++i, p1 += 1, p2 += 1, p3 += 1, p4 += 1, p5 += 1) {
6859 if (Domain::IsInside(im5, i, j, this->_k, this->
_l, p5)) {
6870 const int bi = re.cols ().begin();
6871 const int bj = re.rows ().begin();
6872 const int bk = re.pages().begin();
6873 const int ei = re.cols ().end();
6874 const int ej = re.rows ().end();
6875 const int ek = re.pages().end();
6877 const int s1 = im5.
GetX() - (ei - bi);
6878 const int s2 = (im5.
GetY() - (ej - bj)) * im5.
GetX();
6886 for (
int k = bk; k < ek; ++k, p1 += s2, p2 += s2, p3 += s2, p4 += s2, p5 += s2)
6887 for (
int j = bj; j < ej; ++j, p1 += s1, p2 += s1, p3 += s1, p4 += s1, p5 += s1)
6888 for (
int i = bi; i < ei; ++i, p1 += 1, p2 += 1, p3 += 1, p4 += 1, p5 += 1) {
6889 if (Domain::IsInside(im5, i, j, k, this->
_l, p5)) {
6907 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
6910 QuinaryForEachVoxelBody_1Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
6913 vf.join(body._VoxelFunc);
6917 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
6920 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
6921 ForEachScalar(*im1, *im2, *im3, *im4, *im5, vf);
6925 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
6929 ForEachScalar(*im1, *im2, *im3, *im4, *im5, vf);
6931 QuinaryForEachVoxelBody_1Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
6934 vf.join(body._VoxelFunc);
6939 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
6942 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
6943 ForEachVoxel(*im1, *im2, *im3, *im4, *im5, vf);
6947 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
6950 QuinaryForEachVoxelBody_1Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
6956 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
6959 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
6960 ForEachVoxel(attr, *im1, *im2, *im3, *im4, *im5, vf);
6964 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
6967 QuinaryForEachVoxelBody_1Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
6973 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
6976 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
6977 ForEachVoxel(re, *im1, *im2, *im3, *im4, *im5, vf);
6981 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
6984 QuinaryForEachVoxelBody_1Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
6990 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
6993 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
6994 ForEachVoxel(re, *im1, *im2, *im3, *im4, *im5, vf);
6998 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7001 QuinaryForEachVoxelBody_1Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
7007 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7010 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7011 ForEachVoxel(re, *im1, *im2, *im3, *im4, *im5, vf);
7019 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7022 QuinaryForEachVoxelBody_1Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
7025 vf.join(body._VoxelFunc);
7029 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7032 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7033 ForEachScalar(im1, im2, im3, im4, im5, vf);
7037 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7041 ForEachScalar(im1, im2, im3, im4, im5, vf);
7043 QuinaryForEachVoxelBody_1Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
7046 vf.join(body._VoxelFunc);
7051 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7054 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7055 ForEachVoxel(im1, im2, im3, im4, im5, vf);
7059 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7062 QuinaryForEachVoxelBody_1Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
7068 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7071 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7072 ForEachVoxel(attr, im1, im2, im3, im4, im5, vf);
7076 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7079 QuinaryForEachVoxelBody_1Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
7085 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7088 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7089 ForEachVoxel(re, im1, im2, im3, im4, im5, vf);
7093 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7096 QuinaryForEachVoxelBody_1Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
7102 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7105 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7106 ForEachVoxel(re, im1, im2, im3, im4, im5, vf);
7110 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7113 QuinaryForEachVoxelBody_1Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
7119 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7122 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7123 ForEachVoxel(re, im1, im2, im3, im4, im5, vf);
7135 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
7138 QuinaryForEachVoxelIfBody_1Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
7141 vf.join(body._VoxelFunc);
7142 of.join(body._OutsideFunc);
7146 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
7149 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7150 ForEachScalarIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
7154 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7158 ForEachScalarIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
7162 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7165 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7166 ForEachScalarIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf);
7170 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
7174 ForEachScalarIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
7176 QuinaryForEachVoxelIfBody_1Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
7179 vf.join(body._VoxelFunc);
7180 of.join(body._OutsideFunc);
7185 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
7188 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7189 ForEachVoxelIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
7193 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7197 ForEachVoxelIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
7201 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7204 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7205 ForEachVoxelIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf);
7209 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
7212 QuinaryForEachVoxelIfBody_1Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
7219 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
7222 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7223 ForEachVoxelIf<Domain>(attr, *im1, *im2, *im3, *im4, *im5, vf, of);
7227 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7231 ForEachVoxelIf<Domain>(attr, *im1, *im2, *im3, *im4, *im5, vf, of);
7235 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7238 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7239 ForEachVoxelIf<Domain>(attr, *im1, *im2, *im3, *im4, *im5, vf);
7243 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
7246 QuinaryForEachVoxelIfBody_1Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
7253 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
7256 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7257 ForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
7261 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
7264 QuinaryForEachVoxelIfBody_1Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
7271 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
7274 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7275 ForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
7279 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7283 ForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
7287 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7290 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7291 ForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf);
7295 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
7298 QuinaryForEachVoxelIfBody_1Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
7305 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
7308 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7309 ForEachVoxelIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
7313 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7317 ForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
7321 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7324 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7325 ForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf);
7333 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
7336 QuinaryForEachVoxelIfBody_1Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
7339 vf.join(body._VoxelFunc);
7340 of.join(body._OutsideFunc);
7344 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
7347 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7348 ForEachScalarIf<Domain>(im1, im2, im3, im4, im5, vf, of);
7352 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7356 ForEachScalarIf<Domain>(im1, im2, im3, im4, im5, vf, of);
7360 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7363 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7364 ForEachScalarIf<Domain>(im1, im2, im3, im4, im5, vf);
7368 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
7372 ForEachVoxelIf<Domain>(im1, im2, im3, im4, im5, vf, of);
7374 QuinaryForEachVoxelIfBody_1Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
7377 vf.join(body._VoxelFunc);
7378 of.join(body._OutsideFunc);
7383 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
7386 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7387 ForEachVoxelIf<Domain>(im1, im2, im3, im4, im5, vf, of);
7391 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7395 ForEachVoxelIf<Domain>(im1, im2, im3, im4, im5, vf, of);
7399 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7402 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7403 ForEachVoxelIf<Domain>(im1, im2, im3, im4, im5, vf);
7407 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
7410 QuinaryForEachVoxelIfBody_1Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
7417 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
7420 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7421 ForEachVoxelIf<Domain>(attr, im1, im2, im3, im4, im5, vf, of);
7425 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7429 ForEachVoxelIf<Domain>(attr, im1, im2, im3, im4, im5, vf, of);
7433 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7436 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7437 ForEachVoxelIf<Domain>(attr, im1, im2, im3, im4, im5, vf);
7441 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
7444 QuinaryForEachVoxelIfBody_1Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
7451 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
7454 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7455 ForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
7459 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
7462 QuinaryForEachVoxelIfBody_1Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
7469 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
7472 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7473 ForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
7477 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7481 ForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
7485 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7488 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7489 ForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf);
7493 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
7496 QuinaryForEachVoxelIfBody_1Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
7503 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
7506 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7507 ForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
7511 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7515 ForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
7519 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7522 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7523 ForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf);
7535 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7538 QuinaryForEachVoxelBody_1Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
7545 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7548 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7549 ParallelForEachScalar(*im1, *im2, *im3, *im4, *im5, vf);
7553 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7557 ParallelForEachScalar(*im1, *im2, *im3, *im4, *im5, vf);
7559 QuinaryForEachVoxelBody_1Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
7567 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7570 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7571 ParallelForEachVoxel(*im1, *im2, *im3, *im4, *im5, vf);
7575 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7578 QuinaryForEachVoxelBody_1Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
7580 if (VoxelFunc::IsReduction()) {
7597 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7600 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7601 ParallelForEachVoxel(attr, *im1, *im2, *im3, *im4, *im5, vf);
7605 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7608 QuinaryForEachVoxelBody_1Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
7614 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7617 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7618 ParallelForEachVoxel(re, *im1, *im2, *im3, *im4, *im5, vf);
7622 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7625 QuinaryForEachVoxelBody_1Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
7631 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7634 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7635 ParallelForEachVoxel(re, *im1, *im2, *im3, *im4, *im5, vf);
7639 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7642 QuinaryForEachVoxelBody_1Const<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
7648 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7651 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7652 ParallelForEachVoxel(re, *im1, *im2, *im3, *im4, *im5, vf);
7660 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7663 QuinaryForEachVoxelBody_1Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
7670 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7673 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7674 ParallelForEachScalar(im1, im2, im3, im4, im5, vf);
7678 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7682 ParallelForEachScalar(im1, im2, im3, im4, im5, vf);
7684 QuinaryForEachVoxelBody_1Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
7692 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7695 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7696 ParallelForEachVoxel(im1, im2, im3, im4, im5, vf);
7700 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7703 QuinaryForEachVoxelBody_1Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
7705 if (VoxelFunc::IsReduction()) {
7722 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7725 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7726 ParallelForEachVoxel(attr, im1, im2, im3, im4, im5, vf);
7730 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7733 QuinaryForEachVoxelBody_1Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
7739 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7742 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7743 ParallelForEachVoxel(re, im1, im2, im3, im4, im5, vf);
7747 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7750 QuinaryForEachVoxelBody_1Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
7756 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7759 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7760 ParallelForEachVoxel(re, im1, im2, im3, im4, im5, vf);
7764 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7767 QuinaryForEachVoxelBody_1Const<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
7773 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7776 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7777 ParallelForEachVoxel(re, im1, im2, im3, im4, im5, vf);
7789 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
7792 QuinaryForEachVoxelIfBody_1Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
7794 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
7804 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
7807 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7808 ParallelForEachScalarIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
7812 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7816 ParallelForEachScalarIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
7820 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7823 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7824 ParallelForEachScalarIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf);
7828 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
7832 ParallelForEachVoxelIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
7834 QuinaryForEachVoxelIfBody_1Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
7836 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
7847 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
7850 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7851 ParallelForEachVoxelIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
7855 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7859 ParallelForEachVoxelIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
7863 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7866 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7867 ParallelForEachVoxelIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf);
7871 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
7874 QuinaryForEachVoxelIfBody_1Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
7876 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
7894 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
7897 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7898 ParallelForEachVoxelIf<Domain>(attr, *im1, *im2, *im3, *im4, *im5, vf, of);
7902 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7906 ParallelForEachVoxelIf<Domain>(attr, *im1, *im2, *im3, *im4, *im5, vf, of);
7910 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7913 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7914 ParallelForEachVoxelIf<Domain>(attr, *im1, *im2, *im3, *im4, *im5, vf);
7918 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
7921 QuinaryForEachVoxelIfBody_1Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
7922 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
7932 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
7935 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7936 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
7940 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7944 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
7948 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7951 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7952 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf);
7956 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
7959 QuinaryForEachVoxelIfBody_1Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
7960 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
7970 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
7973 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7974 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
7978 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7982 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
7986 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
7989 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
7990 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf);
7994 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
7997 QuinaryForEachVoxelIfBody_1Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
7998 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
8008 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
8011 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
8012 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
8016 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
8020 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
8024 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
8027 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
8028 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf);
8036 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
8039 QuinaryForEachVoxelIfBody_1Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
8041 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
8051 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
8054 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
8055 ParallelForEachScalarIf<Domain>(im1, im2, im3, im4, im5, vf, of);
8059 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
8063 ParallelForEachScalarIf<Domain>(im1, im2, im3, im4, im5, vf, of);
8067 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
8070 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
8071 ParallelForEachScalarIf<Domain>(im1, im2, im3, im4, im5, vf);
8075 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
8079 ParallelForEachVoxelIf<Domain>(im1, im2, im3, im4, im5, vf, of);
8081 QuinaryForEachVoxelIfBody_1Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
8083 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
8094 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
8097 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
8098 ParallelForEachVoxelIf<Domain>(im1, im2, im3, im4, im5, vf, of);
8102 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
8106 ParallelForEachVoxelIf<Domain>(im1, im2, im3, im4, im5, vf, of);
8110 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
8113 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
8114 ParallelForEachVoxelIf<Domain>(im1, im2, im3, im4, im5, vf);
8118 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
8121 QuinaryForEachVoxelIfBody_1Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
8123 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
8141 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
8144 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
8145 ParallelForEachVoxelIf<Domain>(attr, im1, im2, im3, im4, im5, vf, of);
8149 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
8153 ParallelForEachVoxelIf<Domain>(attr, im1, im2, im3, im4, im5, vf, of);
8157 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
8160 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
8161 ParallelForEachVoxelIf<Domain>(attr, im1, im2, im3, im4, im5, vf);
8165 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
8168 QuinaryForEachVoxelIfBody_1Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
8169 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
8179 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
8182 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
8183 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
8187 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
8191 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
8195 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
8198 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
8199 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf);
8203 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
8206 QuinaryForEachVoxelIfBody_1Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
8207 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
8217 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
8220 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
8221 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
8225 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
8229 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
8233 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
8236 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
8237 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf);
8241 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
8244 QuinaryForEachVoxelIfBody_1Const<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
8245 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
8255 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
8258 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
8259 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
8263 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
8267 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
8271 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
8274 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
8275 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf);
8286 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
8303 ForEachVoxelBody<VoxelFunc>(vf, im1.Attributes()), im1(im1), im2(im2), im3(im3), im4(im4), im5(im5)
8309 ForEachVoxelBody<VoxelFunc>(o), im1(o.im1), im2(o.im2), im3(o.im3), im4(o.im4), im5(o.im5)
8315 ForEachVoxelBody<VoxelFunc>(o, s), im1(o.im1), im2(o.im2), im3(o.im3), im4(o.im4), im5(o.im5)
8327 const int T = (attr.
_dt ? attr.
_t : 1);
8329 for (
int l = 0; l < T; ++l)
8330 for (
int k = 0; k < attr.
_z; ++k)
8331 for (
int j = 0; j < attr.
_y; ++j)
8332 for (
int i = 0; i < attr.
_x; ++i, ++p1, ++p2, ++p3, ++p4, ++p5) {
8348 for (
int idx = re.begin(); idx < re.end(); ++idx, p1 += 1, p2 += 1, p3 += 1, p4 += 1, p5 += 1) {
8358 const int bi = re.cols().begin();
8359 const int bj = re.rows().begin();
8360 const int ei = re.cols().end();
8361 const int ej = re.rows().end();
8363 const int s1 = im5.
GetX() - (ei - bi);
8371 for (
int j = bj; j < ej; ++j, p1 += s1, p2 += s1, p3 += s1, p4 += s1, p5 += s1)
8372 for (
int i = bi; i < ei; ++i, p1 += 1, p2 += 1, p3 += 1, p4 += 1, p5 += 1) {
8382 const int bi = re.cols ().begin();
8383 const int bj = re.rows ().begin();
8384 const int bk = re.pages().begin();
8385 const int ei = re.cols ().end();
8386 const int ej = re.rows ().end();
8387 const int ek = re.pages().end();
8389 const int s1 = im5.
GetX() - (ei - bi);
8390 const int s2 = (im5.
GetY() - (ej - bj)) * im5.
GetX();
8398 for (
int k = bk; k < ek; ++k, p1 += s2, p2 += s2, p3 += s2, p4 += s2, p5 += s2)
8399 for (
int j = bj; j < ej; ++j, p1 += s1, p2 += s1, p3 += s1, p4 += s1, p5 += s1)
8400 for (
int i = bi; i < ei; ++i, p1 += 1, p2 += 1, p3 += 1, p4 += 1, p5 += 1) {
8412 template <
class T1,
class T2,
class T3,
class T4,
class T5,
8429 VoxelFunc &vf, OutsideFunc &of)
8431 ForEachVoxelIfBody<VoxelFunc, OutsideFunc>(vf, of, im1.Attributes()), im1(im1), im2(im2), im3(im3), im4(im4), im5(im5)
8437 ForEachVoxelIfBody<VoxelFunc, OutsideFunc>(o), im1(o.im1), im2(o.im2), im3(o.im3), im4(o.im4), im5(o.im5)
8443 ForEachVoxelIfBody<VoxelFunc, OutsideFunc>(o, s), im1(o.im1), im2(o.im2), im3(o.im3), im4(o.im4), im5(o.im5)
8455 const int T = (attr.
_dt ? attr.
_t : 1);
8457 for (
int l = 0; l < T; ++l)
8458 for (
int k = 0; k < attr.
_z; ++k)
8459 for (
int j = 0; j < attr.
_y; ++j)
8460 for (
int i = 0; i < attr.
_x; ++i, ++p1, ++p2, ++p3, ++p4, ++p5) {
8461 if (Domain::IsInside(im5, i, j, k, l, p5)) {
8478 for (
int idx = re.begin(); idx < re.end(); ++idx, p1 += 1, p2 += 1, p3 += 1, p4 += 1, p5 += 1) {
8479 if (Domain::IsInside(im5, idx, p5)) {
8490 const int bi = re.cols().begin();
8491 const int bj = re.rows().begin();
8492 const int ei = re.cols().end();
8493 const int ej = re.rows().end();
8495 const int s1 = im5.
GetX() - (ei - bi);
8503 for (
int j = bj; j < ej; ++j, p1 += s1, p2 += s1, p3 += s1, p4 += s1, p5 += s1)
8504 for (
int i = bi; i < ei; ++i, p1 += 1, p2 += 1, p3 += 1, p4 += 1, p5 += 1) {
8505 if (Domain::IsInside(im5, i, j, this->_k, this->
_l, p5)) {
8516 const int bi = re.cols ().begin();
8517 const int bj = re.rows ().begin();
8518 const int bk = re.pages().begin();
8519 const int ei = re.cols ().end();
8520 const int ej = re.rows ().end();
8521 const int ek = re.pages().end();
8523 const int s1 = im5.
GetX() - (ei - bi);
8524 const int s2 = (im5.
GetY() - (ej - bj)) * im5.
GetX();
8532 for (
int k = bk; k < ek; ++k, p1 += s2, p2 += s2, p3 += s2, p4 += s2, p5 += s2)
8533 for (
int j = bj; j < ej; ++j, p1 += s1, p2 += s1, p3 += s1, p4 += s1, p5 += s1)
8534 for (
int i = bi; i < ei; ++i, p1 += 1, p2 += 1, p3 += 1, p4 += 1, p5 += 1) {
8535 if (Domain::IsInside(im5, i, j, k, this->
_l, p5)) {
8553 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
8556 QuinaryForEachVoxelBody<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
8559 vf.join(body._VoxelFunc);
8563 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
8566 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
8567 ForEachScalar(*im1, *im2, *im3, *im4, *im5, vf);
8571 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
8575 ForEachScalar(*im1, *im2, *im3, *im4, *im5, vf);
8577 QuinaryForEachVoxelBody<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
8580 vf.join(body._VoxelFunc);
8585 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
8588 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
8589 ForEachVoxel(*im1, *im2, *im3, *im4, *im5, vf);
8593 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
8596 QuinaryForEachVoxelBody<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
8602 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
8605 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
8606 ForEachVoxel(attr, *im1, *im2, *im3, *im4, *im5, vf);
8610 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
8613 QuinaryForEachVoxelBody<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
8619 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
8622 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
8623 ForEachVoxel(re, *im1, *im2, *im3, *im4, *im5, vf);
8627 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
8630 QuinaryForEachVoxelBody<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
8636 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
8639 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
8640 ForEachVoxel(re, *im1, *im2, *im3, *im4, *im5, vf);
8644 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
8647 QuinaryForEachVoxelBody<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
8653 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
8656 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
8657 ForEachVoxel(re, *im1, *im2, *im3, *im4, *im5, vf);
8665 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
8668 QuinaryForEachVoxelBody<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
8671 vf.join(body._VoxelFunc);
8675 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
8678 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
8679 ForEachScalar(im1, im2, im3, im4, im5, vf);
8683 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
8687 ForEachScalar(im1, im2, im3, im4, im5, vf);
8689 QuinaryForEachVoxelBody<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
8692 vf.join(body._VoxelFunc);
8697 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
8700 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
8701 ForEachVoxel(im1, im2, im3, im4, im5, vf);
8705 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
8708 QuinaryForEachVoxelBody<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
8714 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
8717 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
8718 ForEachVoxel(attr, im1, im2, im3, im4, im5, vf);
8722 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
8725 QuinaryForEachVoxelBody<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
8731 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
8734 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
8735 ForEachVoxel(re, im1, im2, im3, im4, im5, vf);
8739 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
8742 QuinaryForEachVoxelBody<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
8748 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
8751 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
8752 ForEachVoxel(re, im1, im2, im3, im4, im5, vf);
8756 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
8759 QuinaryForEachVoxelBody<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
8765 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
8768 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
8769 ForEachVoxel(re, im1, im2, im3, im4, im5, vf);
8781 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
8784 QuinaryForEachVoxelIfBody<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
8787 vf.join(body._VoxelFunc);
8788 of.join(body._OutsideFunc);
8792 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
8795 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
8796 ForEachScalarIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
8800 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
8804 ForEachScalarIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
8808 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
8811 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
8812 ForEachScalarIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf);
8816 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
8820 ForEachScalarIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
8822 QuinaryForEachVoxelIfBody<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
8825 vf.join(body._VoxelFunc);
8826 of.join(body._OutsideFunc);
8831 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
8834 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
8835 ForEachVoxelIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
8839 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
8843 ForEachVoxelIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
8847 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
8850 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
8851 ForEachVoxelIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf);
8855 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
8858 QuinaryForEachVoxelIfBody<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
8865 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
8868 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
8869 ForEachVoxelIf<Domain>(attr, *im1, *im2, *im3, *im4, *im5, vf, of);
8873 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
8877 ForEachVoxelIf<Domain>(attr, *im1, *im2, *im3, *im4, *im5, vf, of);
8881 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
8884 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
8885 ForEachVoxelIf<Domain>(attr, *im1, *im2, *im3, *im4, *im5, vf);
8889 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
8892 QuinaryForEachVoxelIfBody<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
8899 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
8902 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
8903 ForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
8907 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
8910 QuinaryForEachVoxelIfBody<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
8917 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
8920 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
8921 ForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
8925 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
8929 ForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
8933 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
8936 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
8937 ForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf);
8941 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
8944 QuinaryForEachVoxelIfBody<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
8951 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
8954 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
8955 ForEachVoxelIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
8959 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
8963 ForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
8967 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
8970 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
8971 ForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf);
8979 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
8982 QuinaryForEachVoxelIfBody<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
8985 vf.join(body._VoxelFunc);
8986 of.join(body._OutsideFunc);
8990 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
8993 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
8994 ForEachScalarIf<Domain>(im1, im2, im3, im4, im5, vf, of);
8998 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9002 ForEachScalarIf<Domain>(im1, im2, im3, im4, im5, vf, of);
9006 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9009 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
9010 ForEachScalarIf<Domain>(im1, im2, im3, im4, im5, vf);
9014 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
9018 ForEachVoxelIf<Domain>(im1, im2, im3, im4, im5, vf, of);
9020 QuinaryForEachVoxelIfBody<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
9023 vf.join(body._VoxelFunc);
9024 of.join(body._OutsideFunc);
9029 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
9032 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
9033 ForEachVoxelIf<Domain>(im1, im2, im3, im4, im5, vf, of);
9037 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9041 ForEachVoxelIf<Domain>(im1, im2, im3, im4, im5, vf, of);
9045 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9048 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
9049 ForEachVoxelIf<Domain>(im1, im2, im3, im4, im5, vf);
9053 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
9056 QuinaryForEachVoxelIfBody<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
9063 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
9066 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
9067 ForEachVoxelIf<Domain>(attr, im1, im2, im3, im4, im5, vf, of);
9071 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9075 ForEachVoxelIf<Domain>(attr, im1, im2, im3, im4, im5, vf, of);
9079 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9082 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
9083 ForEachVoxelIf<Domain>(attr, im1, im2, im3, im4, im5, vf);
9087 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
9090 QuinaryForEachVoxelIfBody<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
9097 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
9100 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
9101 ForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
9105 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
9108 QuinaryForEachVoxelIfBody<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
9115 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
9118 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
9119 ForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
9123 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9127 ForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
9131 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9134 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
9135 ForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf);
9139 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
9142 QuinaryForEachVoxelIfBody<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
9149 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
9152 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
9153 ForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
9157 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9161 ForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
9165 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9168 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
9169 ForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf);
9181 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9184 QuinaryForEachVoxelBody<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
9191 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9194 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
9195 ParallelForEachScalar(*im1, *im2, *im3, *im4, *im5, vf);
9199 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9203 ParallelForEachScalar(*im1, *im2, *im3, *im4, *im5, vf);
9205 QuinaryForEachVoxelBody<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
9213 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9216 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
9217 ParallelForEachVoxel(*im1, *im2, *im3, *im4, *im5, vf);
9221 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9224 QuinaryForEachVoxelBody<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
9226 if (VoxelFunc::IsReduction()) {
9243 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9246 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
9247 ParallelForEachVoxel(attr, *im1, *im2, *im3, *im4, *im5, vf);
9251 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9254 QuinaryForEachVoxelBody<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
9260 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9263 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
9264 ParallelForEachVoxel(re, *im1, *im2, *im3, *im4, *im5, vf);
9268 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9271 QuinaryForEachVoxelBody<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
9277 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9280 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
9281 ParallelForEachVoxel(re, *im1, *im2, *im3, *im4, *im5, vf);
9285 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9288 QuinaryForEachVoxelBody<T1, T2, T3, T4, T5, VoxelFunc> body(*im1, *im2, *im3, *im4, *im5, vf);
9294 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9297 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
9298 ParallelForEachVoxel(re, *im1, *im2, *im3, *im4, *im5, vf);
9306 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9309 QuinaryForEachVoxelBody<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
9316 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9319 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
9320 ParallelForEachScalar(im1, im2, im3, im4, im5, vf);
9324 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9328 ParallelForEachScalar(im1, im2, im3, im4, im5, vf);
9330 QuinaryForEachVoxelBody<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
9338 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9341 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
9342 ParallelForEachVoxel(im1, im2, im3, im4, im5, vf);
9346 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9349 QuinaryForEachVoxelBody<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
9351 if (VoxelFunc::IsReduction()) {
9368 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9371 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
9372 ParallelForEachVoxel(attr, im1, im2, im3, im4, im5, vf);
9376 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9379 QuinaryForEachVoxelBody<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
9385 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9388 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
9389 ParallelForEachVoxel(re, im1, im2, im3, im4, im5, vf);
9393 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9396 QuinaryForEachVoxelBody<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
9402 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9405 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
9406 ParallelForEachVoxel(re, im1, im2, im3, im4, im5, vf);
9410 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9413 QuinaryForEachVoxelBody<T1, T2, T3, T4, T5, VoxelFunc> body(im1, im2, im3, im4, im5, vf);
9419 template <
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9422 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
9423 ParallelForEachVoxel(re, im1, im2, im3, im4, im5, vf);
9435 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
9438 QuinaryForEachVoxelIfBody<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
9440 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
9450 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
9453 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
9454 ParallelForEachScalarIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
9458 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9462 ParallelForEachScalarIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
9466 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9469 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
9470 ParallelForEachScalarIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf);
9474 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
9478 ParallelForEachVoxelIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
9480 QuinaryForEachVoxelIfBody<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
9482 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
9493 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
9496 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
9497 ParallelForEachVoxelIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
9501 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9505 ParallelForEachVoxelIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf, of);
9509 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9512 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
9513 ParallelForEachVoxelIf<Domain>(*im1, *im2, *im3, *im4, *im5, vf);
9517 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
9520 QuinaryForEachVoxelIfBody<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
9522 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
9540 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
9543 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
9544 ParallelForEachVoxelIf<Domain>(attr, *im1, *im2, *im3, *im4, *im5, vf, of);
9548 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9552 ParallelForEachVoxelIf<Domain>(attr, *im1, *im2, *im3, *im4, *im5, vf, of);
9556 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9559 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
9560 ParallelForEachVoxelIf<Domain>(attr, *im1, *im2, *im3, *im4, *im5, vf);
9564 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
9567 QuinaryForEachVoxelIfBody<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
9568 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
9578 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
9581 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
9582 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
9586 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9590 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
9594 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9597 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
9598 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf);
9602 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
9605 QuinaryForEachVoxelIfBody<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
9606 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
9616 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
9619 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
9620 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
9624 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9628 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
9632 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9635 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
9636 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf);
9640 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
9643 QuinaryForEachVoxelIfBody<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(*im1, *im2, *im3, *im4, *im5, vf, of);
9644 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
9654 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
9657 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
9658 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
9662 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9666 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf, of);
9670 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9673 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
9674 ParallelForEachVoxelIf<Domain>(re, *im1, *im2, *im3, *im4, *im5, vf);
9682 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
9685 QuinaryForEachVoxelIfBody<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
9687 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
9697 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
9700 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
9701 ParallelForEachScalarIf<Domain>(im1, im2, im3, im4, im5, vf, of);
9705 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9709 ParallelForEachScalarIf<Domain>(im1, im2, im3, im4, im5, vf, of);
9713 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9716 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
9717 ParallelForEachScalarIf<Domain>(im1, im2, im3, im4, im5, vf);
9721 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
9725 ParallelForEachVoxelIf<Domain>(im1, im2, im3, im4, im5, vf, of);
9727 QuinaryForEachVoxelIfBody<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
9729 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
9740 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
9743 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
9744 ParallelForEachVoxelIf<Domain>(im1, im2, im3, im4, im5, vf, of);
9748 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9752 ParallelForEachVoxelIf<Domain>(im1, im2, im3, im4, im5, vf, of);
9756 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9759 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
9760 ParallelForEachVoxelIf<Domain>(im1, im2, im3, im4, im5, vf);
9764 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
9767 QuinaryForEachVoxelIfBody<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
9769 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
9787 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
9790 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
9791 ParallelForEachVoxelIf<Domain>(attr, im1, im2, im3, im4, im5, vf, of);
9795 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9799 ParallelForEachVoxelIf<Domain>(attr, im1, im2, im3, im4, im5, vf, of);
9803 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9806 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
9807 ParallelForEachVoxelIf<Domain>(attr, im1, im2, im3, im4, im5, vf);
9811 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
9814 QuinaryForEachVoxelIfBody<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
9815 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
9825 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
9828 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
9829 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
9833 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9837 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
9841 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9844 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
9845 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf);
9849 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
9852 QuinaryForEachVoxelIfBody<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
9853 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
9863 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
9866 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
9867 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
9871 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9875 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
9879 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9882 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
9883 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf);
9887 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
9890 QuinaryForEachVoxelIfBody<T1, T2, T3, T4, T5, VoxelFunc, OutsideFunc, Domain> body(im1, im2, im3, im4, im5, vf, of);
9891 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) {
9901 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc,
class Outs
ideFunc>
9904 if (VoxelFunc::IsReduction() || OutsideFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
9905 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
9909 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9913 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf, of);
9917 template <
class Domain,
class T1,
class T2,
class T3,
class T4,
class T5,
class VoxelFunc>
9920 if (VoxelFunc::IsReduction()) _foreachquinaryvoxelfunction_must_not_be_reduction();
9921 ParallelForEachVoxelIf<Domain>(re, im1, im2, im3, im4, im5, vf);
double _dt
Voxel t-dimensions (in ms)
QuinaryForEachVoxelBody_Const(QuinaryForEachVoxelBody_Const &o, split s)
Split constructor.
QuinaryForEachVoxelIfBody_1Const(const QuinaryForEachVoxelIfBody_1Const &o)
Copy constructor.
Dummy type used to distinguish split constructor from copy constructor.
QuinaryForEachVoxelBody_3Const(const GenericImage< T1 > &im1, const GenericImage< T2 > &im2, const GenericImage< T3 > &im3, GenericImage< T4 > &im4, GenericImage< T5 > &im5, VoxelFunc &vf)
Constructor.
QuinaryForEachVoxelBody_2Const(const GenericImage< T1 > &im1, const GenericImage< T2 > &im2, GenericImage< T3 > &im3, GenericImage< T4 > &im4, GenericImage< T5 > &im5, VoxelFunc &vf)
Constructor.
QuinaryForEachVoxelIfBody(GenericImage< T1 > &im1, GenericImage< T2 > &im2, GenericImage< T3 > &im3, GenericImage< T4 > &im4, GenericImage< T5 > &im5, VoxelFunc &vf, OutsideFunc &of)
Constructor.
QuinaryForEachVoxelBody_Const(const QuinaryForEachVoxelBody_Const &o)
Copy constructor.
QuinaryForEachVoxelBody(const QuinaryForEachVoxelBody &o)
Copy constructor.
QuinaryForEachVoxelIfBody_Const(const GenericImage< T1 > &im1, const GenericImage< T2 > &im2, const GenericImage< T3 > &im3, const GenericImage< T4 > &im4, const GenericImage< T5 > &im5, VoxelFunc &vf, OutsideFunc &of)
Constructor.
bool IsEmpty() const
Whether image is uninitialized.
QuinaryForEachVoxelBody_1Const(const QuinaryForEachVoxelBody_1Const &o)
Copy constructor.
QuinaryForEachVoxelBody(QuinaryForEachVoxelBody &o, split s)
Split constructor.
QuinaryForEachVoxelIfBody_3Const(const GenericImage< T1 > &im1, const GenericImage< T2 > &im2, const GenericImage< T3 > &im3, GenericImage< T4 > &im4, GenericImage< T5 > &im5, VoxelFunc &vf, OutsideFunc &of)
Constructor.
int _y
Image y-dimension (in voxels)
QuinaryForEachVoxelIfBody_3Const(QuinaryForEachVoxelIfBody_3Const &o, split s)
Split constructor.
QuinaryForEachVoxelIfBody_2Const(const QuinaryForEachVoxelIfBody_2Const &o)
Copy constructor.
QuinaryForEachVoxelBody_4Const(const QuinaryForEachVoxelBody_4Const &o)
Copy constructor.
QuinaryForEachVoxelBody_2Const(const QuinaryForEachVoxelBody_2Const &o)
Copy constructor.
VoxelFunc _VoxelFunc
Functor executed for each voxel.
QuinaryForEachVoxelIfBody_4Const(QuinaryForEachVoxelIfBody_4Const &o, split s)
Split constructor.
QuinaryForEachVoxelIfBody_1Const(QuinaryForEachVoxelIfBody_1Const &o, split s)
Split constructor.
QuinaryForEachVoxelIfBody_2Const(QuinaryForEachVoxelIfBody_2Const &o, split s)
Split constructor.
QuinaryForEachVoxelBody_2Const(QuinaryForEachVoxelBody_2Const &o, split s)
Split constructor.
void operator()(const ImageAttributes &attr) const
Process entire image.
QuinaryForEachVoxelIfBody_4Const(const GenericImage< T1 > &im1, const GenericImage< T2 > &im2, const GenericImage< T3 > &im3, const GenericImage< T4 > &im4, GenericImage< T5 > &im5, VoxelFunc &vf, OutsideFunc &of)
Constructor.
QuinaryForEachVoxelIfBody_3Const(const QuinaryForEachVoxelIfBody_3Const &o)
Copy constructor.
QuinaryForEachVoxelIfBody_2Const(const GenericImage< T1 > &im1, const GenericImage< T2 > &im2, GenericImage< T3 > &im3, GenericImage< T4 > &im4, GenericImage< T5 > &im5, VoxelFunc &vf, OutsideFunc &of)
Constructor.
VoxelType * GetPointerToVoxels(int=0, int=0, int=0, int=0)
int GetX() const
Returns the number of voxels in the x-direction.
int _z
Image z-dimension (in voxels)
int _l
Indices for fixed dimensions.
int _t
Image t-dimension (in voxels)
QuinaryForEachVoxelIfBody(QuinaryForEachVoxelIfBody &o, split s)
Split constructor.
int GetT() const
Returns the number of voxels in the t-direction.
QuinaryForEachVoxelIfBody_1Const(const GenericImage< T1 > &im1, GenericImage< T2 > &im2, GenericImage< T3 > &im3, GenericImage< T4 > &im4, GenericImage< T5 > &im5, VoxelFunc &vf, OutsideFunc &of)
Constructor.
QuinaryForEachVoxelBody_4Const(const GenericImage< T1 > &im1, const GenericImage< T2 > &im2, const GenericImage< T3 > &im3, const GenericImage< T4 > &im4, GenericImage< T5 > &im5, VoxelFunc &vf)
Constructor.
QuinaryForEachVoxelBody_3Const(QuinaryForEachVoxelBody_3Const &o, split s)
Split constructor.
QuinaryForEachVoxelIfBody(const QuinaryForEachVoxelIfBody &o)
Copy constructor.
int GetY() const
Returns the number of voxels in the y-direction.
QuinaryForEachVoxelIfBody_Const(const QuinaryForEachVoxelIfBody_Const &o)
Copy constructor.
QuinaryForEachVoxelBody(GenericImage< T1 > &im1, GenericImage< T2 > &im2, GenericImage< T3 > &im3, GenericImage< T4 > &im4, GenericImage< T5 > &im5, VoxelFunc &vf)
Constructor.
int GetNumberOfVoxels() const
OutsideFunc _OutsideFunc
Functor executed for each background voxel.
QuinaryForEachVoxelBody_3Const(const QuinaryForEachVoxelBody_3Const &o)
Copy constructor.
QuinaryForEachVoxelBody_1Const(QuinaryForEachVoxelBody_1Const &o, split s)
Split constructor.
double GetTSize() const
Returns the size of a voxel in the t-direction.
QuinaryForEachVoxelIfBody_Const(QuinaryForEachVoxelIfBody_Const &o, split s)
Split constructor.
QuinaryForEachVoxelBody_4Const(QuinaryForEachVoxelBody_4Const &o, split s)
Split constructor.
QuinaryForEachVoxelBody_1Const(const GenericImage< T1 > &im1, GenericImage< T2 > &im2, GenericImage< T3 > &im3, GenericImage< T4 > &im4, GenericImage< T5 > &im5, VoxelFunc &vf)
Constructor.
QuinaryForEachVoxelBody_Const(const GenericImage< T1 > &im1, const GenericImage< T2 > &im2, const GenericImage< T3 > &im3, const GenericImage< T4 > &im4, const GenericImage< T5 > &im5, VoxelFunc &vf)
Constructor.
int _x
Image x-dimension (in voxels)
void parallel_reduce(const Range &range, Body &body)
parallel_reduce dummy template function which executes the body serially
QuinaryForEachVoxelIfBody_4Const(const QuinaryForEachVoxelIfBody_4Const &o)
Copy constructor.
void parallel_for(const Range &range, const Body &body)
parallel_for dummy template function which executes the body serially