|
template<typename P1 , typename Op > |
BOOST_FORCEINLINE Op | static_for_each (P1 &p1, Op op) |
|
template<typename P1 , typename Op > |
BOOST_FORCEINLINE Op | static_for_each (const P1 &p1, Op op) |
|
template<typename P1 , typename P2 , typename Op > |
BOOST_FORCEINLINE Op | static_for_each (P1 &p1, P2 &p2, Op op) |
|
template<typename P1 , typename P2 , typename Op > |
BOOST_FORCEINLINE Op | static_for_each (P1 &p1, const P2 &p2, Op op) |
|
template<typename P1 , typename P2 , typename Op > |
BOOST_FORCEINLINE Op | static_for_each (const P1 &p1, P2 &p2, Op op) |
|
template<typename P1 , typename P2 , typename Op > |
BOOST_FORCEINLINE Op | static_for_each (const P1 &p1, const P2 &p2, Op op) |
|
template<typename P1 , typename P2 , typename P3 , typename Op > |
BOOST_FORCEINLINE Op | static_for_each (P1 &p1, P2 &p2, P3 &p3, Op op) |
|
template<typename P1 , typename P2 , typename P3 , typename Op > |
BOOST_FORCEINLINE Op | static_for_each (P1 &p1, P2 &p2, const P3 &p3, Op op) |
|
template<typename P1 , typename P2 , typename P3 , typename Op > |
BOOST_FORCEINLINE Op | static_for_each (P1 &p1, const P2 &p2, P3 &p3, Op op) |
|
template<typename P1 , typename P2 , typename P3 , typename Op > |
BOOST_FORCEINLINE Op | static_for_each (P1 &p1, const P2 &p2, const P3 &p3, Op op) |
|
template<typename P1 , typename P2 , typename P3 , typename Op > |
BOOST_FORCEINLINE Op | static_for_each (const P1 &p1, P2 &p2, P3 &p3, Op op) |
|
template<typename P1 , typename P2 , typename P3 , typename Op > |
BOOST_FORCEINLINE Op | static_for_each (const P1 &p1, P2 &p2, const P3 &p3, Op op) |
|
template<typename P1 , typename P2 , typename P3 , typename Op > |
BOOST_FORCEINLINE Op | static_for_each (const P1 &p1, const P2 &p2, P3 &p3, Op op) |
|
template<typename P1 , typename P2 , typename P3 , typename Op > |
BOOST_FORCEINLINE Op | static_for_each (const P1 &p1, const P2 &p2, const P3 &p3, Op op) |
|
Equivalent to std::for_each. Pairs the elements semantically.
struct increment {
template <typename Incrementable>
void operator()(Incrementable& x) const { ++x; }
};
template <typename ColorBase>
void increment_elements(ColorBase& cb) {
static_for_each(cb, increment());
}
uint8_t red[2], green[2], blue[2];
rgb8c_planar_ptr_t p1(red,green,blue);
rgb8c_planar_ptr_t p2=p1;
increment_elements(p1);
++p2;
assert(p1 == p2);