// access pixel by coordinate ColorVal operator()(const int p, const uint32_t r, const uint32_t c) const { assert(p>=0); assert(depth == 8 || depth == 16); if (p<4 && constant[p]) return constant_val[p]; #ifdef SUPPORT_HDR if (depth <= 8) { #endif switch(p) { case 0: return plane_8_1->get(r,c); case 1: return plane_16_1->get(r,c); case 2: return plane_16_2->get(r,c); case 3: return plane_8_2->get(r,c); default: return plane_frame_lookbacks->get(r,c); } #ifdef SUPPORT_HDR } else { switch(p) { case 0: return plane_16_1->get(r,c); case 1: return plane_32_1->get(r,c); case 2: return plane_32_2->get(r,c); case 3: return plane_16_2->get(r,c); default: return plane_frame_lookbacks->get(r,c); } } #endif }