Struct rhusics_ecs::CurrentFrameUpdateSystem [−][src]
pub struct CurrentFrameUpdateSystem<P, R, A, T> { /* fields omitted */ }
Current frame update system.
Will update positions and velocities for the current frame, based on NextFrame
values.
Type parameters:
P
: Positional quantity, usuallyPoint2
orPoint3
R
: Rotational quantity, usuallyBasis2
orQuaternion
A
: Angular velocity, usuallyScalar
orVector3
T
: Transform type (BodyPose2
or similar)
System function:
fn(NextFrame<Velocity>, NextFrame<T>) -> (Velocity, T)
Methods
impl<P, R, A, T> CurrentFrameUpdateSystem<P, R, A, T> where
P: EuclideanSpace,
P::Diff: VectorSpace + InnerSpace + Debug,
P::Scalar: BaseFloat,
R: Rotation<P>,
A: Clone + Zero,
T: Pose<P, R>,
[src]
impl<P, R, A, T> CurrentFrameUpdateSystem<P, R, A, T> where
P: EuclideanSpace,
P::Diff: VectorSpace + InnerSpace + Debug,
P::Scalar: BaseFloat,
R: Rotation<P>,
A: Clone + Zero,
T: Pose<P, R>,
Trait Implementations
impl<'a, P, R, A, T> System<'a> for CurrentFrameUpdateSystem<P, R, A, T> where
P: EuclideanSpace + Send + Sync + 'static,
P::Diff: VectorSpace + InnerSpace + Debug + Send + Sync + 'static,
P::Scalar: BaseFloat + Send + Sync + 'static,
R: Rotation<P> + Send + Sync + 'static,
A: Clone + Zero + Send + Sync + 'static,
T: Pose<P, R> + Component + Clone + Send + Sync + 'static,
[src]
impl<'a, P, R, A, T> System<'a> for CurrentFrameUpdateSystem<P, R, A, T> where
P: EuclideanSpace + Send + Sync + 'static,
P::Diff: VectorSpace + InnerSpace + Debug + Send + Sync + 'static,
P::Scalar: BaseFloat + Send + Sync + 'static,
R: Rotation<P> + Send + Sync + 'static,
A: Clone + Zero + Send + Sync + 'static,
T: Pose<P, R> + Component + Clone + Send + Sync + 'static,
type SystemData = (WriteStorage<'a, Velocity<P::Diff, A>>, ReadStorage<'a, NextFrame<Velocity<P::Diff, A>>>, WriteStorage<'a, T>, ReadStorage<'a, NextFrame<T>>)
The resource bundle required to execute this system. Read more
fn run(&mut self, data: Self::SystemData)
[src]
fn run(&mut self, data: Self::SystemData)
Executes the system with the required system data. Read more
fn running_time(&self) -> RunningTime
[src]
fn running_time(&self) -> RunningTime
Returns a hint how long the system needs for running. This is used to optimize the way they're executed (might allow more parallelization). Read more
fn accessor(&'b self) -> AccessorCow<'a, 'b, Self>
[src]
fn accessor(&'b self) -> AccessorCow<'a, 'b, Self>
Return the accessor from the [SystemData
].
fn setup(&mut self, res: &mut Resources)
[src]
fn setup(&mut self, res: &mut Resources)
Sets up the Resources
using Self::SystemData::setup
.