inline void apply_on_vector(FloatType * out, Arg1Type in1, Arg2Type in2, Functor f) { for (int i = 0; i != VectorSize; ++i) { *out++ = f(in1.get(), in2.get()); in1.increment(); in2.increment(); } }
inline void apply_on_vector(FloatType * out, Arg1Type in1, Arg2Type in2, unsigned int n, Functor f) { do { *out++ = f(in1.get(), in2.get()); in1.increment(); in2.increment(); } while (--n); }