pub struct MotionProgressExecution { /* private fields */ }Expand description
A policy-resolved normalized 0..1 progress run.
This is the renderer-neutral lifecycle primitive for adapters that need one progress value to
drive their own layout, geometry, or paint projection. It deliberately does not schedule frames
itself; callers translate the returned MotionFrameDemand through their adapter.
Implementations§
Source§impl MotionProgressExecution
impl MotionProgressExecution
Sourcepub fn start(plan: MotionExecutionPlan, started_at: Instant) -> Self
pub fn start(plan: MotionExecutionPlan, started_at: Instant) -> Self
Starts a normalized progress run from an already resolved motion plan.
Sourcepub fn start_resolved(input: MotionPolicyInput, started_at: Instant) -> Self
pub fn start_resolved(input: MotionPolicyInput, started_at: Instant) -> Self
Resolves policy input and starts a normalized progress run.
Sourcepub const fn scalar_execution(&self) -> &MotionScalarExecution
pub const fn scalar_execution(&self) -> &MotionScalarExecution
Returns the underlying scalar execution.
Sourcepub const fn plan(&self) -> &MotionExecutionPlan
pub const fn plan(&self) -> &MotionExecutionPlan
Returns the resolved execution plan.
Sourcepub const fn model(&self) -> MotionModel
pub const fn model(&self) -> MotionModel
Returns the model that should execute after policy resolution.
Sourcepub const fn policy_report(&self) -> &MotionPolicyReport
pub const fn policy_report(&self) -> &MotionPolicyReport
Returns the policy report produced for the requested model.
Sourcepub const fn state(&self) -> MotionExecutionState
pub const fn state(&self) -> MotionExecutionState
Returns the policy-resolved execution state.
Sourcepub const fn started_at(&self) -> Instant
pub const fn started_at(&self) -> Instant
Returns the adapter instant at which this progress run started.
Sourcepub fn sample_at(&self, now: Duration) -> MotionProgressSample
pub fn sample_at(&self, now: Duration) -> MotionProgressSample
Samples the progress run at deterministic elapsed time.
Sourcepub fn sample_clock(&self, clock: MotionClockSample) -> MotionProgressSample
pub fn sample_clock(&self, clock: MotionClockSample) -> MotionProgressSample
Samples the progress run at a deterministic adapter clock sample.
Sourcepub fn sample_since(&self, now: Instant) -> MotionProgressSample
pub fn sample_since(&self, now: Instant) -> MotionProgressSample
Samples the progress run from adapter instants while keeping deterministic elapsed-time semantics in the controller layer.