pub struct ChunkSchedule { /* private fields */ }Expand description
Schedule of contiguous HaloWindows covering a sample range [start .. end) of a recording.
Implementations§
Source§impl ChunkSchedule
impl ChunkSchedule
Sourcepub fn new(
target_range: Range<u64>,
batch_samples: u64,
left_halo: u64,
right_halo: u64,
total_samples: u64,
) -> Self
pub fn new( target_range: Range<u64>, batch_samples: u64, left_halo: u64, right_halo: u64, total_samples: u64, ) -> Self
Builds a schedule over target_range within a recording of length total_samples.
Sourcepub fn full_recording(
total_samples: u64,
batch_samples: u64,
left_halo: u64,
right_halo: u64,
) -> Self
pub fn full_recording( total_samples: u64, batch_samples: u64, left_halo: u64, right_halo: u64, ) -> Self
Builds a schedule covering the entire recording 0 .. total_samples.
Sourcepub fn windows(&self) -> &[HaloWindow]
pub fn windows(&self) -> &[HaloWindow]
Slice of scheduled HaloWindows.
Sourcepub fn into_windows(self) -> Vec<HaloWindow>
pub fn into_windows(self) -> Vec<HaloWindow>
Consumes the schedule and returns the underlying vector of windows.
Sourcepub fn max_read_samples(&self) -> usize
pub fn max_read_samples(&self) -> usize
Maximum read_len() across all windows (used to pre-allocate persistent VRAM buffers).
Trait Implementations§
Source§impl Clone for ChunkSchedule
impl Clone for ChunkSchedule
Auto Trait Implementations§
impl Forget for ChunkSchedule
impl Freeze for ChunkSchedule
impl RefUnwindSafe for ChunkSchedule
impl Send for ChunkSchedule
impl Sync for ChunkSchedule
impl Unpin for ChunkSchedule
impl UnsafeUnpin for ChunkSchedule
impl UnwindSafe for ChunkSchedule
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneExpand for Twhere
T: Clone,
impl<T> CloneExpand for Twhere
T: Clone,
fn __expand_clone_method(&self, _: &Scope) -> T
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>
Converts
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>, which can then be
downcast into Box<dyn 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>
Converts
Rc<Trait> (where Trait: Downcast) to Rc<Any>, which 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)
Converts
&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)
Converts
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSend for T
impl<T> DowncastSend for T
Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
impl<T> ErasedDestructor for Twhere
T: 'static,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more