@@ -53,24 +53,30 @@ class Buffer : public BufferInterface<C>, public Painter, public TextPainter<R>
5353 : BufferInterface<C>(other.color)
5454 { std::copy (other.buffer [0 ], other.buffer [0 ] + sizeof (other.buffer ) / sizeof (C), buffer[0 ]); }
5555
56- // Construct from colored buffer of same size
56+ // Construct from colored buffer with same size
5757 template <Color C_, class Painter_ >
5858 constexpr Buffer (const Buffer<C_, R, Painter_> &other)
5959 : BufferInterface<C>(other.color)
6060 { std::copy (other.buffer [0 ], other.buffer [0 ] + sizeof (other.buffer ) / sizeof (C), buffer[0 ]); }
6161
62- // Construct from colored buffer of different size
62+ // Construct from colored buffer with different size
6363 template <Color C_, class R_ , class Painter_ >
6464 constexpr Buffer (const Buffer<C_, R_, Painter_> &other)
6565 : BufferInterface<C>(other.color)
6666 { writeImage (accessor::Image<C_, modm::accessor::Ram>(&other)); }
6767
68- // Construct from monochrome Buffer of same size
69- template <class R_ , class Painter_ >
68+ // Construct from monochrome Buffer with same size
69+ template <class Painter_ >
7070 constexpr Buffer (const Buffer<bool , R, Painter_> &other)
7171 : BufferInterface<C>(html::White)
7272 { writeImage (accessor::Image<bool , modm::accessor::Ram>(&other)); }
7373
74+ // Construct from monochrome Buffer with different size
75+ template <class R_ , class Painter_ >
76+ constexpr Buffer (const Buffer<bool , R_, Painter_> &other)
77+ : BufferInterface<C>(html::White)
78+ { writeImage (accessor::Image<bool , modm::accessor::Ram>(&other)); }
79+
7480 Buffer &
7581 operator =(const Buffer<C, R, Painter> &other)
7682 {
@@ -97,6 +103,9 @@ class Buffer : public BufferInterface<C>, public Painter, public TextPainter<R>
97103 Point getSize () const final
98104 { return R::asPoint (); }
99105
106+ const uint8_t * getBuffer () const final
107+ { return (uint8_t *)(buffer); }
108+
100109 // API Fasade: Write BufferInterface
101110 template <Color C_>
102111 void
@@ -117,9 +126,6 @@ class Buffer : public BufferInterface<C>, public Painter, public TextPainter<R>
117126protected:
118127 C buffer[R::W][R::H];
119128
120- uint8_t * getBuffer () const final
121- { return (uint8_t *)(buffer); }
122-
123129 /* *
124130 * Write colored Image
125131 *
0 commit comments