Struct spectrusty::chip::ula::UlaVideoFrame
source · pub struct UlaVideoFrame;
Expand description
Implements VideoFrame for PAL ULA.
Trait Implementations§
source§impl Clone for UlaVideoFrame
impl Clone for UlaVideoFrame
source§fn clone(&self) -> UlaVideoFrame
fn clone(&self) -> UlaVideoFrame
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Debug for UlaVideoFrame
impl Debug for UlaVideoFrame
source§impl Default for UlaVideoFrame
impl Default for UlaVideoFrame
source§fn default() -> UlaVideoFrame
fn default() -> UlaVideoFrame
Returns the “default value” for a type. Read more
source§impl<'de> Deserialize<'de> for UlaVideoFrame
impl<'de> Deserialize<'de> for UlaVideoFrame
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
source§impl Hash for UlaVideoFrame
impl Hash for UlaVideoFrame
source§impl Ord for UlaVideoFrame
impl Ord for UlaVideoFrame
source§fn cmp(&self, other: &UlaVideoFrame) -> Ordering
fn cmp(&self, other: &UlaVideoFrame) -> Ordering
1.21.0 · source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
source§impl PartialEq<UlaVideoFrame> for UlaVideoFrame
impl PartialEq<UlaVideoFrame> for UlaVideoFrame
source§fn eq(&self, other: &UlaVideoFrame) -> bool
fn eq(&self, other: &UlaVideoFrame) -> bool
source§impl PartialOrd<UlaVideoFrame> for UlaVideoFrame
impl PartialOrd<UlaVideoFrame> for UlaVideoFrame
source§fn partial_cmp(&self, other: &UlaVideoFrame) -> Option<Ordering>
fn partial_cmp(&self, other: &UlaVideoFrame) -> Option<Ordering>
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for
self
and other
) and is used by the <=
operator. Read moresource§impl Serialize for UlaVideoFrame
impl Serialize for UlaVideoFrame
source§impl VideoFrame for UlaVideoFrame
impl VideoFrame for UlaVideoFrame
source§const HTS_RANGE: Range<Ts> = _
const HTS_RANGE: Range<Ts> = _
A range of horizontal T-states, 0 should be when the frame starts.
source§const VSL_BORDER_TOP: Ts = 16i16
const VSL_BORDER_TOP: Ts = 16i16
The first video scan line index of the top border.
source§const VSL_PIXELS: Range<Ts> = _
const VSL_PIXELS: Range<Ts> = _
A range of video scan line indexes for the pixel area.
source§const VSL_BORDER_BOT: Ts = 304i16
const VSL_BORDER_BOT: Ts = 304i16
The last video scan line index of the bottom border.
§type BorderHtsIter = StepBy<Range<i16>>
type BorderHtsIter = StepBy<Range<i16>>
An iterator for rendering borders.
source§fn border_whole_line_hts_iter(border_size: BorderSize) -> Self::BorderHtsIter
fn border_whole_line_hts_iter(border_size: BorderSize) -> Self::BorderHtsIter
Returns an iterator of border latch horizontal T-states.
source§fn border_left_hts_iter(border_size: BorderSize) -> Self::BorderHtsIter
fn border_left_hts_iter(border_size: BorderSize) -> Self::BorderHtsIter
Returns an iterator of left border latch horizontal T-states.
source§fn border_right_hts_iter(border_size: BorderSize) -> Self::BorderHtsIter
fn border_right_hts_iter(border_size: BorderSize) -> Self::BorderHtsIter
Returns an iterator of right border latch horizontal T-states.
source§fn contention(hc: Ts) -> Ts
fn contention(hc: Ts) -> Ts
Returns a horizontal T-state counter after adding an additional T-states required for emulating
a memory contention, while rendering lines that require reading video memory. Read more
source§fn floating_bus_offset(hc: Ts) -> Option<u16>
fn floating_bus_offset(hc: Ts) -> Option<u16>
Returns an optional floating bus horizontal offset for the given horizontal timestamp.
source§fn snow_interference_coords(_: VideoTs) -> Option<CellCoords>
fn snow_interference_coords(_: VideoTs) -> Option<CellCoords>
Returns an optional cell coordinates of a “snow effect” interference.
source§const HTS_COUNT: i16 = Self::HTS_RANGE.end - Self::HTS_RANGE.start
const HTS_COUNT: i16 = Self::HTS_RANGE.end - Self::HTS_RANGE.start
The number of horizontal T-states.
source§const FRAME_TSTATES_COUNT: i32 = Self::HTS_COUNT as FTs * Self::VSL_COUNT as FTs
const FRAME_TSTATES_COUNT: i32 = Self::HTS_COUNT as FTs * Self::VSL_COUNT as FTs
The total number of T-states per frame.
source§fn border_size_pixels(border_size: BorderSize) -> u32
fn border_size_pixels(border_size: BorderSize) -> u32
A rendered screen border size in pixels depending on the border size selection. Read more
source§fn screen_size_pixels(border_size: BorderSize) -> (u32, u32)
fn screen_size_pixels(border_size: BorderSize) -> (u32, u32)
Returns output screen pixel size (horizontal, vertical), including the border area, measured
in low-resolution pixels. Read more
source§fn border_top_vsl_iter(border_size: BorderSize) -> Range<i16>
fn border_top_vsl_iter(border_size: BorderSize) -> Range<i16>
Returns an iterator of the top border low-resolution scan line indexes.
source§fn border_bot_vsl_iter(border_size: BorderSize) -> Range<i16>
fn border_bot_vsl_iter(border_size: BorderSize) -> Range<i16>
Returns an iterator of the bottom border low-resolution scan line indexes.
source§fn floating_bus_screen_address(_: VideoTs) -> Option<u16>
fn floating_bus_screen_address(_: VideoTs) -> Option<u16>
Returns an optional floating bus screen address (in the screen address space) for the given timestamp. Read more
source§fn is_contended_line_mreq(vsl: i16) -> bool
fn is_contended_line_mreq(vsl: i16) -> bool
Returns
true
if the given scan line index is contended for MREQ (memory request) access. Read moreimpl Copy for UlaVideoFrame
impl Eq for UlaVideoFrame
impl StructuralEq for UlaVideoFrame
impl StructuralPartialEq for UlaVideoFrame
Auto Trait Implementations§
impl RefUnwindSafe for UlaVideoFrame
impl Send for UlaVideoFrame
impl Sync for UlaVideoFrame
impl Unpin for UlaVideoFrame
impl UnwindSafe for UlaVideoFrame
Blanket Implementations§
§impl<T> Conv for T
impl<T> Conv for T
§impl<T> FmtForward for T
impl<T> FmtForward for T
§fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
Causes
self
to use its Binary
implementation when Debug
-formatted.§fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
§fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
§fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
§fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
Causes
self
to use its Octal
implementation when Debug
-formatted.§fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
§fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
§fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
§fn fmt_list(self) -> FmtList<Self>where
&'a Self: for<'a> IntoIterator,
fn fmt_list(self) -> FmtList<Self>where
&'a Self: for<'a> IntoIterator,
Formats each item in a sequence. Read more
source§impl<S, T> IntoSample<S> for Twhere
S: FromSample<T>,
impl<S, T> IntoSample<S> for Twhere
S: FromSample<T>,
source§fn into_sample(self) -> S
fn into_sample(self) -> S
Convert to
S
a sample type from self
.§impl<T> Pipe for Twhere
T: ?Sized,
impl<T> Pipe for Twhere
T: ?Sized,
§fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
Pipes by value. This is generally the method you want to use. Read more
§fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
Borrows
self
and passes that borrow into the pipe function. Read more§fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
Mutably borrows
self
and passes that borrow into the pipe function. Read more§fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> Rwhere
Self: Borrow<B>,
B: 'a + ?Sized,
R: 'a,
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> Rwhere
Self: Borrow<B>,
B: 'a + ?Sized,
R: 'a,
§fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R
) -> Rwhere
Self: BorrowMut<B>,
B: 'a + ?Sized,
R: 'a,
fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R
) -> Rwhere
Self: BorrowMut<B>,
B: 'a + ?Sized,
R: 'a,
§fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> Rwhere
Self: AsRef<U>,
U: 'a + ?Sized,
R: 'a,
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> Rwhere
Self: AsRef<U>,
U: 'a + ?Sized,
R: 'a,
Borrows
self
, then passes self.as_ref()
into the pipe function.§fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> Rwhere
Self: AsMut<U>,
U: 'a + ?Sized,
R: 'a,
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> Rwhere
Self: AsMut<U>,
U: 'a + ?Sized,
R: 'a,
§impl<T> Tap for T
impl<T> Tap for T
§fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Selfwhere
Self: Borrow<B>,
B: ?Sized,
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Selfwhere
Self: Borrow<B>,
B: ?Sized,
Immutable access to the
Borrow<B>
of a value. Read more§fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Selfwhere
Self: BorrowMut<B>,
B: ?Sized,
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Selfwhere
Self: BorrowMut<B>,
B: ?Sized,
Mutable access to the
BorrowMut<B>
of a value. Read more§fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Selfwhere
Self: AsRef<R>,
R: ?Sized,
fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Selfwhere
Self: AsRef<R>,
R: ?Sized,
Immutable access to the
AsRef<R>
view of a value. Read more§fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Selfwhere
Self: AsMut<R>,
R: ?Sized,
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Selfwhere
Self: AsMut<R>,
R: ?Sized,
Mutable access to the
AsMut<R>
view of a value. Read more§fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Selfwhere
Self: Deref<Target = T>,
T: ?Sized,
fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Selfwhere
Self: Deref<Target = T>,
T: ?Sized,
Immutable access to the
Deref::Target
of a value. Read more§fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Selfwhere
Self: DerefMut<Target = T> + Deref,
T: ?Sized,
fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Selfwhere
Self: DerefMut<Target = T> + Deref,
T: ?Sized,
Mutable access to the
Deref::Target
of a value. Read more§fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
Calls
.tap()
only in debug builds, and is erased in release builds.§fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
Calls
.tap_mut()
only in debug builds, and is erased in release
builds. Read more§fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Selfwhere
Self: Borrow<B>,
B: ?Sized,
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Selfwhere
Self: Borrow<B>,
B: ?Sized,
Calls
.tap_borrow()
only in debug builds, and is erased in release
builds. Read more§fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Selfwhere
Self: BorrowMut<B>,
B: ?Sized,
fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Selfwhere
Self: BorrowMut<B>,
B: ?Sized,
Calls
.tap_borrow_mut()
only in debug builds, and is erased in release
builds. Read more§fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Selfwhere
Self: AsRef<R>,
R: ?Sized,
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Selfwhere
Self: AsRef<R>,
R: ?Sized,
Calls
.tap_ref()
only in debug builds, and is erased in release
builds. Read more§fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Selfwhere
Self: AsMut<R>,
R: ?Sized,
fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Selfwhere
Self: AsMut<R>,
R: ?Sized,
Calls
.tap_ref_mut()
only in debug builds, and is erased in release
builds. Read more