mod encode;
use crate::mode::Mode;
use crate::render::RenderBuf;
#[derive(Clone, Debug)]
pub struct Render {
mode: Mode,
buf: RenderBuf,
}
impl Render {
#[must_use]
pub fn new(mode: Mode) -> Self {
let buf = RenderBuf::new(mode.sample_depth(), mode.sample_count());
Self { mode, buf }
}
pub fn clear(&mut self) {
self.buf.clear();
}
#[inline]
#[must_use]
pub const fn data(&self) -> &[u8] {
self.buf.data()
}
#[inline]
#[must_use]
pub const fn data_mut(&mut self) -> &mut [u8] {
self.buf.data_mut()
}
}
impl Drop for Render {
#[inline(always)]
fn drop(&mut self) {}
}