Enum nannou::app::LoopMode [−][src]
pub enum LoopMode { RefreshSync, Rate { update_interval: Duration, }, Wait, NTimes { number_of_updates: usize, }, }
Expand description
The mode in which the App is currently running the event loop and emitting Update
events.
Variants
Synchronises Update
events with requests for a new image by the swap chain.
The result of using this loop mode is similar to using vsync in traditional applications. E.g. if you have one window running on a monitor with a 60hz refresh rate, your update will get called at a fairly consistent interval that is close to 60 times per second.
Specifies that the application is continuously looping at a consistent rate.
NOTE: This currently behaves the same as RefreshSync
. Need to upate this to handled a
fix step properly in the future. See #456.
Show fields
Fields of Rate
update_interval: Duration
The minimum interval between emitted updates.
Waits for user input events to occur before calling event
with an Update
event.
This is particularly useful for low-energy GUIs that only need to update when some sort of input has occurred. The benefit of using this mode is that you don’t waste CPU cycles looping or updating when you know nothing is changing in your model or view.
Loops for the given number of updates and then finishes.
This is similar to the Wait loop mode, except that windowing, application and input
events will not cause the loop to update or view again after the initial
number_of_updates
have already been applied.
This is useful for sketches where you only want to draw one frame, or if you know exactly how many updates you require for an animation, etc.
Show fields
Fields of NTimes
number_of_updates: usize
The number of updates that must be emited regardless of non-update events
Implementations
The minimum number of updates that will be emitted after an event is triggered in Wait mode.
A simplified constructor for the default RefreshSync
loop mode.
Assumes a display refresh rate of ~60hz and in turn specifies a minimum_update_latency
of
~8.33ms. The windows
field is set to None
.
Specify the Ntimes mode with one update
Waits long enough to ensure loop iteration never occurs faster than the given max_fps
.
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for LoopMode
impl UnwindSafe for LoopMode
Blanket Implementations
impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for S where
T: Component + Float,
D: AdaptFrom<S, Swp, Dwp, T>,
Swp: WhitePoint,
Dwp: WhitePoint,
impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for S where
T: Component + Float,
D: AdaptFrom<S, Swp, Dwp, T>,
Swp: WhitePoint,
Dwp: WhitePoint,
Mutably borrows from an owned value. Read more
Convert into T with values clamped to the color defined bounds Read more
Convert into T. The resulting color might be invalid in its color space Read more
Convert into T, returning ok if the color is inside of its defined range,
otherwise an OutOfBounds
error is returned which contains the unclamped color. Read more
pub fn vzip(self) -> V