pub struct NESImage { /* private fields */ }
Expand description
An image the size of an NES screen, backed by an array.
This is a fairly big thing to have on the stack (~61k), so go easy with it, or stick it in a global somewhere.
Trait Implementations§
Source§impl ReadableImage<u8> for NESImage
impl ReadableImage<u8> for NESImage
Source§fn get(&self, loc: (usize, usize)) -> Option<&P>
fn get(&self, loc: (usize, usize)) -> Option<&P>
Performs an optional indexing by reference, gives
None
for out of bounds.Source§fn slice(&self, r: Range<(usize, usize)>) -> ImageSlice<'_, P>
fn slice(&self, r: Range<(usize, usize)>) -> ImageSlice<'_, P>
Grabs out a sub-slice of the data. Read more
Source§fn iter(&self) -> ImageRefIter<'_, P> ⓘ
fn iter(&self) -> ImageRefIter<'_, P> ⓘ
Lets you iterate any image by reference.
Source§fn to_vecimage(&self) -> VecImage<P>
fn to_vecimage(&self) -> VecImage<P>
This is like
to_owned
, you get your own version of the data. Read moreSource§impl WritableImage<u8> for NESImage
impl WritableImage<u8> for NESImage
Source§fn as_mut_ptr(&mut self) -> *mut u8
fn as_mut_ptr(&mut self) -> *mut u8
Raw mut pointer to the data.
Source§fn get_mut(&mut self, loc: (usize, usize)) -> Option<&mut P>
fn get_mut(&mut self, loc: (usize, usize)) -> Option<&mut P>
Performs an optional indexing by mut reference, gives
None
for out of bounds.Source§fn slice_mut(&mut self, r: Range<(usize, usize)>) -> ImageMutSlice<'_, P>
fn slice_mut(&mut self, r: Range<(usize, usize)>) -> ImageMutSlice<'_, P>
Grabs out a mutable sub-slice of the data. Read more
Source§fn iter_mut(&mut self) -> ImageMutRefIter<'_, P> ⓘ
fn iter_mut(&mut self) -> ImageMutRefIter<'_, P> ⓘ
Lets you mutably iterate over any writable form of image.
Source§fn set_all(&mut self, pixel: P)where
P: Clone,
fn set_all(&mut self, pixel: P)where
P: Clone,
Assigns all locations to be the given pixel value.
Source§fn direct_copy<S>(&mut self, src: &S, offset: (isize, isize))where
S: ReadableImage<P>,
P: Copy,
fn direct_copy<S>(&mut self, src: &S, offset: (isize, isize))where
S: ReadableImage<P>,
P: Copy,
Directly copies the data from the source image into this image. Read more
Source§fn flip_vertical(&mut self)
fn flip_vertical(&mut self)
Flips the image vertically. Read more
Source§fn flip_horizontal(&mut self)
fn flip_horizontal(&mut self)
Flips the image horizontally. Read more
Source§fn inplace_counterclockwise90_square(&mut self) -> Option<()>
fn inplace_counterclockwise90_square(&mut self) -> Option<()>
Performs a 90 degrees counter-clockwise rotation, in place. Read more
Auto Trait Implementations§
impl Freeze for NESImage
impl RefUnwindSafe for NESImage
impl Send for NESImage
impl Sync for NESImage
impl Unpin for NESImage
impl UnwindSafe for NESImage
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.