19 template<std::
unsigned_
integral Pixel>
22 return {
reinterpret_cast<Pixel*
>(data.
data() + y * pitch), maxWidth};
32 assert(width <= maxWidth);
33 lineWidths[line] = width;
36 template<std::
unsigned_
integral Pixel>
39 getLineDirect<Pixel>(line)[0] = color;
44 [[nodiscard]]
unsigned getLineWidth(
unsigned line)
const override;
46 unsigned line,
unsigned& width,
47 void* buf,
unsigned bufWidth)
const override;
Interface for getting lines from a video frame.
unsigned getHeight() const
Gets the number of lines in this frame.
const T * data() const
Returns pointer to the start of the memory buffer.
A video frame as output by the VDP scanline conversion unit, before any postprocessing filters are ap...
unsigned getLineWidthDirect(unsigned y) const
std::span< Pixel > getLineDirect(unsigned y)
void setBlank(unsigned line, Pixel color)
unsigned getLineWidth(unsigned line) const override
Gets the number of display pixels on the given line.
RawFrame(const PixelFormat &format, unsigned maxWidth, unsigned height)
bool hasContiguousStorage() const override
Returns true when two consecutive rows are also consecutive in memory.
const void * getLineInfo(unsigned line, unsigned &width, void *buf, unsigned bufWidth) const override
Abstract implementation of getLinePtr().
void setLineWidth(unsigned line, unsigned width)
void format(SectorAccessibleDisk &disk, MSXBootSectorType bootType)
Format the given disk (= a single partition).
This file implemented 3 utility functions: