| 86 | /// write a block of uint8_ts out in groups of three. len is the total number of uint8_ts to write out. The template |
| 87 | /// parameters indicate how many uint8_ts to skip at the beginning and/or end of each grouping |
| 88 | template <fl::u8 FLAGS, class D, EOrder RGB_ORDER> void writePixels(PixelController<RGB_ORDER> pixels, void* context = nullptr) { |
| 89 | select(); |
| 90 | while(data != end) { |
| 91 | if(FLAGS & FLAG_START_BIT) { |
| 92 | writeBit<0>(1); |
| 93 | } |
| 94 | writeByte(D::adjust(pixels.loadAndScale0())); |
| 95 | writeByte(D::adjust(pixels.loadAndScale1())); |
| 96 | writeByte(D::adjust(pixels.loadAndScale2())); |
| 97 | |
| 98 | pixels.advanceData(); |
| 99 | pixels.stepDithering(); |
| 100 | data += (3+skip); |
| 101 | } |
| 102 | D::postBlock(len); |
| 103 | release(); |
| 104 | } |
| 105 | |
| 106 | }; |
| 107 |
nothing calls this directly
no test coverage detected