Trait rgb::ComponentBytes

source ·
pub trait ComponentBytes<T: Pod>where
    Self: ComponentSlice<T>,{
    // Provided methods
    fn as_bytes(&self) -> &[u8]  { ... }
    fn as_bytes_mut(&mut self) -> &mut [u8]  { ... }
}
Expand description

Casting a slice of RGB/A values to a slice of u8

If instead of RGB8 you use RGB<MyCustomType>, and you want to cast from/to that custom type, implement the Plain trait for it:

unsafe impl rgb::Pod for MyCustomType {}
unsafe impl rgb::Zeroable for MyCustomType {}

Plain types are not allowed to contain struct padding, booleans, chars, enums, references or pointers.

Provided Methods§

source

fn as_bytes(&self) -> &[u8]

The components interpreted as raw bytes, in machine’s native endian. In RGB bytes of the red component are first.

source

fn as_bytes_mut(&mut self) -> &mut [u8]

The components interpreted as raw bytes, in machine’s native endian. In RGB bytes of the red component are first.

Implementations on Foreign Types§

source§

impl<T: Pod> ComponentBytes<T> for [ARGB<T>]

source§

impl<T: Pod> ComponentBytes<T> for [Gray<T>]

source§

impl<T: Pod> ComponentBytes<T> for [RGB<T>]

source§

impl<T: Pod> ComponentBytes<T> for [RGBA<T>]

source§

impl<T: Pod> ComponentBytes<T> for [GrayAlpha<T>]

source§

impl<T: Pod> ComponentBytes<T> for [ABGR<T>]

source§

impl<T: Pod> ComponentBytes<T> for [BGR<T>]

source§

impl<T: Pod> ComponentBytes<T> for [BGRA<T>]

Implementors§