Struct ChainTopRightDown

Source
pub struct ChainTopRightDown<const PANEL_ROWS: usize, const PANEL_COLS: usize, const TILE_ROWS: usize, const TILE_COLS: usize> {}
Expand description

Chaining strategy for tiled panels

This type should be provided to the TiledFrameBuffer as a type argument. Take a look at its documentation for more details

When looking at the front, panels are chained together starting at the top right, chaining to the left until the end of the column. Then wrapping down to the next row where panels are chained left to right. This makes every second rows panels installed upside down. This pattern repeats until all rows of panels are covered.

§Type Parameters

  • PANEL_ROWS - Number of rows in a single panel
  • PANEL_COLS - Number of columns in a single panel
  • TILE_ROWS - Number of panels stacked vertically
  • TILE_COLS - Number of panels stacked horizontally

Trait Implementations§

Source§

impl<const PANEL_ROWS: usize, const PANEL_COLS: usize, const TILE_ROWS: usize, const TILE_COLS: usize> Debug for ChainTopRightDown<PANEL_ROWS, PANEL_COLS, TILE_ROWS, TILE_COLS>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<const PANEL_ROWS: usize, const PANEL_COLS: usize, const TILE_ROWS: usize, const TILE_COLS: usize> PixelRemapper for ChainTopRightDown<PANEL_ROWS, PANEL_COLS, TILE_ROWS, TILE_COLS>

Source§

const VIRT_ROWS: usize

Number of rows in the virtual panel
Source§

const VIRT_COLS: usize

Number of columns in the virtual panel
Source§

const FB_ROWS: usize = PANEL_ROWS

Number of rows in the actual framebuffer
Source§

const FB_COLS: usize

Number of columns in the actual framebuffer
Source§

fn remap_xy(x: usize, y: usize) -> (usize, usize)

Remap an x,y coordinate to a framebuffer pixel
Source§

fn remap<C: PixelColor>(pixel: Pixel<C>) -> Pixel<C>

Remap a virtual pixel to a framebuffer pixel
Source§

fn remap_point(point: Point) -> Point

Remap a virtual point to a framebuffer point
Source§

fn virtual_size() -> (usize, usize)

Size of the virtual panel
Source§

fn fb_size() -> (usize, usize)

Size of the framebuffer that this remaps to

Auto Trait Implementations§

§

impl<const PANEL_ROWS: usize, const PANEL_COLS: usize, const TILE_ROWS: usize, const TILE_COLS: usize> Freeze for ChainTopRightDown<PANEL_ROWS, PANEL_COLS, TILE_ROWS, TILE_COLS>

§

impl<const PANEL_ROWS: usize, const PANEL_COLS: usize, const TILE_ROWS: usize, const TILE_COLS: usize> RefUnwindSafe for ChainTopRightDown<PANEL_ROWS, PANEL_COLS, TILE_ROWS, TILE_COLS>

§

impl<const PANEL_ROWS: usize, const PANEL_COLS: usize, const TILE_ROWS: usize, const TILE_COLS: usize> Send for ChainTopRightDown<PANEL_ROWS, PANEL_COLS, TILE_ROWS, TILE_COLS>

§

impl<const PANEL_ROWS: usize, const PANEL_COLS: usize, const TILE_ROWS: usize, const TILE_COLS: usize> Sync for ChainTopRightDown<PANEL_ROWS, PANEL_COLS, TILE_ROWS, TILE_COLS>

§

impl<const PANEL_ROWS: usize, const PANEL_COLS: usize, const TILE_ROWS: usize, const TILE_COLS: usize> Unpin for ChainTopRightDown<PANEL_ROWS, PANEL_COLS, TILE_ROWS, TILE_COLS>

§

impl<const PANEL_ROWS: usize, const PANEL_COLS: usize, const TILE_ROWS: usize, const TILE_COLS: usize> UnwindSafe for ChainTopRightDown<PANEL_ROWS, PANEL_COLS, TILE_ROWS, TILE_COLS>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Az for T

Source§

fn az<Dst>(self) -> Dst
where T: Cast<Dst>,

Casts the value.
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<Src, Dst> CastFrom<Src> for Dst
where Src: Cast<Dst>,

Source§

fn cast_from(src: Src) -> Dst

Casts the value.
Source§

impl<T> CheckedAs for T

Source§

fn checked_as<Dst>(self) -> Option<Dst>
where T: CheckedCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> CheckedCastFrom<Src> for Dst
where Src: CheckedCast<Dst>,

Source§

fn checked_cast_from(src: Src) -> Option<Dst>

Casts the value.
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> OverflowingAs for T

Source§

fn overflowing_as<Dst>(self) -> (Dst, bool)
where T: OverflowingCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> OverflowingCastFrom<Src> for Dst
where Src: OverflowingCast<Dst>,

Source§

fn overflowing_cast_from(src: Src) -> (Dst, bool)

Casts the value.
Source§

impl<T> SaturatingAs for T

Source§

fn saturating_as<Dst>(self) -> Dst
where T: SaturatingCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> SaturatingCastFrom<Src> for Dst
where Src: SaturatingCast<Dst>,

Source§

fn saturating_cast_from(src: Src) -> Dst

Casts the value.
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> UnwrappedAs for T

Source§

fn unwrapped_as<Dst>(self) -> Dst
where T: UnwrappedCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> UnwrappedCastFrom<Src> for Dst
where Src: UnwrappedCast<Dst>,

Source§

fn unwrapped_cast_from(src: Src) -> Dst

Casts the value.
Source§

impl<T> WrappingAs for T

Source§

fn wrapping_as<Dst>(self) -> Dst
where T: WrappingCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> WrappingCastFrom<Src> for Dst
where Src: WrappingCast<Dst>,

Source§

fn wrapping_cast_from(src: Src) -> Dst

Casts the value.