pub struct ProgressCounter { /* private fields */ }
Expand description

Resource for tracking overall progress

This resource is automatically created when entering a state that was configured using ProgressPlugin, and removed when exiting it.

Implementations§

source§

impl ProgressCounter

source

pub fn progress(&self) -> Progress

Get the latest overall progress information

This is the combined total of all systems.

To get correct information, make sure that you call this function only after all your systems that track progress finished.

This does not include “hidden” progress. To get the full “real” total, use progress_complete.

Use this method for progress bars and other things that indicate/report progress information to the user.

source

pub fn progress_complete(&self) -> Progress

Get the latest overall progress information

This is the combined total of all systems.

To get correct information, make sure that you call this function only after all your systems that track progress finished

This includes “hidden” progress. To get only the “visible” progress, use progress.

This is the method to be used for things like state transitions, and other use cases that must account for the “true” actual progress of the registered systems.

source

pub fn manually_track(&self, progress: Progress)

Add some amount of progress to the running total for the current frame.

In most cases you do not want to call this function yourself. Let your systems return a Progress and wrap them in track_progress instead.

source

pub fn manually_track_hidden(&self, progress: HiddenProgress)

Add some amount of “hidden” progress to the running total for the current frame.

Hidden progress counts towards the true total (like for triggering the state transition) as reported by the progress_complete method, but is not counted by the progress method. The intention is that it should not affect things like progress bars and other user-facing indicators.

In most cases you do not want to call this function yourself. Let your systems return a Progress and wrap them in track_progress instead.

source

pub fn persist_progress(&mut self, progress: Progress)

Persist progress for the rest of the current state

source

pub fn persist_progress_hidden(&mut self, progress: HiddenProgress)

Persist hidden progress for the rest of the current state

Trait Implementations§

source§

impl Default for ProgressCounter

source§

fn default() -> ProgressCounter

Returns the “default value” for a type. Read more
source§

impl Resource for ProgressCounterwhere Self: Send + Sync + 'static,

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Downcast for Twhere T: 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.
§

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.
§

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.
§

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.
§

impl<T> DowncastSync for Twhere T: Any + Send + Sync,

§

fn into_any_arc(self: Arc<T>) -> Arc<dyn Any + Send + Sync>

Convert Arc<Trait> (where Trait: Downcast) to Arc<Any>. Arc<Any> can then be further downcast into Arc<ConcreteType> where ConcreteType implements Trait.
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> FromWorld for Twhere T: Default,

source§

fn from_world(_world: &mut World) -> T

Creates Self using data from the given World.
§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for Twhere U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more