struct CommandBuilder<'a> {
cache: &'a AnalogSignalCache,
viewport: &'a Viewport,
num_timestamps: &'a BigInt,
view_width: f32,
min_valid_pixel: f32,
max_valid_pixel: f32,
output: CommandOutput,
analog_settings: AnalogSettings,
}Expand description
Builds drawing commands by iterating viewport pixels.
Fields§
§cache: &'a AnalogSignalCache§viewport: &'a Viewport§num_timestamps: &'a BigInt§view_width: f32§min_valid_pixel: f32§max_valid_pixel: f32§output: CommandOutput§analog_settings: AnalogSettingsImplementations§
Source§impl<'a> CommandBuilder<'a>
impl<'a> CommandBuilder<'a>
fn new( cache: &'a AnalogSignalCache, viewport: &'a Viewport, num_timestamps: &'a BigInt, view_width: f32, analog_settings: AnalogSettings, ) -> Self
fn build(self) -> AnalogDrawingCommands
fn time_at_pixel(&self, px: f64) -> u64
fn pixel_at_time(&self, time: u64) -> f32
fn query(&self, time: u64) -> CacheQueryResult
Sourcefn add_before_viewport_sample(&mut self) -> Option<f32>
fn add_before_viewport_sample(&mut self) -> Option<f32>
Captures the most recent sample occurring before the visible viewport. This method ensures rendering continuity when a signal value extends from before the viewport into the visible area.
fn iterate_pixels(&mut self, start_px: f32, end_px: f32)
fn process_flat( &mut self, px: u32, end: u32, query: &CacheQueryResult, next_change: Option<u64>, next_query_time: &mut Option<u64>, ) -> u32
fn process_range(&mut self, px: u32, t0: u64, t1: u64)
Sourcefn add_after_viewport_sample(&mut self, end_px: f32)
fn add_after_viewport_sample(&mut self, end_px: f32)
Extends rendering to include the first sample occurring after the visible viewport.
fn finalize(self, before_px: Option<f32>) -> AnalogDrawingCommands
Auto Trait Implementations§
impl<'a> Freeze for CommandBuilder<'a>
impl<'a> RefUnwindSafe for CommandBuilder<'a>
impl<'a> Send for CommandBuilder<'a>
impl<'a> Sync for CommandBuilder<'a>
impl<'a> Unpin for CommandBuilder<'a>
impl<'a> UnwindSafe for CommandBuilder<'a>
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> 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.Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<T> GetSetFdFlags for T
impl<T> GetSetFdFlags for T
Source§fn get_fd_flags(&self) -> Result<FdFlags, Error>where
T: AsFilelike,
fn get_fd_flags(&self) -> Result<FdFlags, Error>where
T: AsFilelike,
Query the “status” flags for the
self file descriptor.Source§fn new_set_fd_flags(&self, fd_flags: FdFlags) -> Result<SetFdFlags<T>, Error>where
T: AsFilelike,
fn new_set_fd_flags(&self, fd_flags: FdFlags) -> Result<SetFdFlags<T>, Error>where
T: AsFilelike,
Source§fn set_fd_flags(&mut self, set_fd_flags: SetFdFlags<T>) -> Result<(), Error>where
T: AsFilelike,
fn set_fd_flags(&mut self, set_fd_flags: SetFdFlags<T>) -> Result<(), Error>where
T: AsFilelike,
Set the “status” flags for the
self file descriptor. Read moreSource§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