5[[nodiscard]]
static unsigned calcMaxWidth(
unsigned maxWidth)
8 bytes = (bytes + 63) & ~63;
14 , maxWidth(calcMaxWidth(maxWidth_))
21 data.
resize(
size_t(maxWidth) * height_);
25 for (
auto line :
xrange(height_)) {
30unsigned RawFrame::getLineWidth(
unsigned line)
const
33 return lineWidths[line];
36std::span<const RawFrame::Pixel> RawFrame::getUnscaledLine(
37 unsigned line, std::span<Pixel> )
const
42bool RawFrame::hasContiguousStorage()
const
void setHeight(unsigned height_)
void init(FieldType fieldType_)
(Re)initialize an existing FrameSource.
unsigned getHeight() const
Gets the number of lines in this frame.
@ NONINTERLACED
Interlacing is off for this frame.
std::span< const T > first(size_t n) const
void resize(size_t size)
Grow or shrink the memory block.
std::span< Pixel > getLineDirect(unsigned y)
RawFrame(unsigned maxWidth, unsigned height)
void setBlank(unsigned line, Pixel color)
This file implemented 3 utility functions:
constexpr auto xrange(T e)