pub struct InlineRunner { /* private fields */ }Expand description
The default, SYNCHRONOUS runner: runs on submit, stashes the reply for an immediate poll. Behavior-identical to the pre-seam in-process run.
Implementations§
Source§impl InlineRunner
impl InlineRunner
Trait Implementations§
Source§impl Default for InlineRunner
impl Default for InlineRunner
Source§impl HistoryRunner for InlineRunner
impl HistoryRunner for InlineRunner
Source§fn sync_parts_library(
&mut self,
_revision: u64,
_fetch: &mut dyn FnMut() -> PartsLibraryMap,
)
fn sync_parts_library( &mut self, _revision: u64, _fetch: &mut dyn FnMut() -> PartsLibraryMap, )
Nothing to send: Inline runs on the CALLER’s thread against the CALLER’s kernel store, so the library the caller would hand over is already the one this run resolves against. (Which is also why Inline never needs the preflight — there is only one store, and the caller seeds it directly.)
Source§fn submit_run(&mut self, request: HistoryRequest, generation: u64)
fn submit_run(&mut self, request: HistoryRequest, generation: u64)
Submit a history run tagged with a monotonic generation. The runner executes
it (immediately for Inline; on a background thread later) and makes the reply
available via
poll_run.Source§fn poll_run(&mut self) -> Option<RunReply>
fn poll_run(&mut self) -> Option<RunReply>
Non-blocking: the next completed run reply, if any (drained each frame).
Source§fn submit_query(&mut self, query: MeasureQuery)
fn submit_query(&mut self, query: MeasureQuery)
Submit a per-object measurement query (answered against the runner’s warm
registry). Inline computes it immediately; a thread impl computes it on the
runner thread and surfaces it via
poll_query.Source§fn poll_query(&mut self) -> Option<MeasureReply>
fn poll_query(&mut self) -> Option<MeasureReply>
Non-blocking: the next completed measurement reply, if any.
Source§fn submit_mesh_import(&mut self, request: MeshImportRequest)
fn submit_mesh_import(&mut self, request: MeshImportRequest)
Submit RANSAC mesh reconstruction to the runner’s thread/worker.
Source§fn poll_mesh_import(&mut self) -> Option<MeshImportReply>
fn poll_mesh_import(&mut self) -> Option<MeshImportReply>
Non-blocking: the next completed mesh reconstruction, if any.
Source§fn poll_library_request(&mut self) -> bool
fn poll_library_request(&mut self) -> bool
True when the runner REFUSED a run because its resident parts library
could not serve it (see
Reply::NeedPartsLibrary). It has already
forgotten its copy, so the next sync_parts_library reinstalls; the
caller must re-submit the run. Never true for a runner that shares the
caller’s store.Auto Trait Implementations§
impl !RefUnwindSafe for InlineRunner
impl !Sync for InlineRunner
impl Freeze for InlineRunner
impl Send for InlineRunner
impl Unpin for InlineRunner
impl UnsafeUnpin for InlineRunner
impl UnwindSafe for InlineRunner
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> 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