Struct amethyst::StateMachine [−][src]
A simple stack-based state machine (pushdown automaton).
Implementations
impl<'a, T, E: Send + Sync + 'static> StateMachine<'a, T, E>
[src]
pub fn new<S: State<T, E> + 'a>(initial_state: S) -> StateMachine<'a, T, E>
[src]
Creates a new state machine with the given initial state.
pub fn is_running(&self) -> bool
[src]
Checks whether the state machine is running.
pub fn start(&mut self, data: StateData<'_, T>) -> Result<(), StateError>
[src]
Initializes the state machine.
pub fn handle_event(&mut self, data: StateData<'_, T>, event: E)
[src]
Passes a single event to the active state to handle.
pub fn fixed_update(&mut self, data: StateData<'_, T>)
[src]
Updates the currently active state at a steady, fixed interval.
pub fn update(&mut self, data: StateData<'_, T>)
[src]
Updates the currently active state immediately.
pub fn transition(&mut self, request: Trans<T, E>, data: StateData<'_, T>)
[src]
Performs a state transition.
Usually called by update or fixed_update by the user's defined State
.
This method can also be called when there are one or multiple Trans
stored in the
global EventChannel<TransEvent<T, E>>
. Such Trans
will be passed to this method
sequentially in the order of insertion.
Trait Implementations
impl<'a, T, E> Debug for StateMachine<'a, T, E>
[src]
Auto Trait Implementations
impl<'a, T, E> !RefUnwindSafe for StateMachine<'a, T, E>
[src]
impl<'a, T, E> !Send for StateMachine<'a, T, E>
[src]
impl<'a, T, E> !Sync for StateMachine<'a, T, E>
[src]
impl<'a, T, E> Unpin for StateMachine<'a, T, E>
[src]
impl<'a, T, E> !UnwindSafe for StateMachine<'a, T, E>
[src]
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,
[src]
T: Component + Float,
D: AdaptFrom<S, Swp, Dwp, T>,
Swp: WhitePoint,
Dwp: WhitePoint,
pub fn adapt_into_using<M>(self, method: M) -> D where
M: TransformMatrix<Swp, Dwp, T>,
[src]
M: TransformMatrix<Swp, Dwp, T>,
pub fn adapt_into(self) -> D
[src]
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Any for T where
T: Any,
T: Any,
pub fn get_type_id(&self) -> TypeId
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> Pointable for T
pub const ALIGN: usize
type Init = T
The type for initializers.
pub unsafe fn init(init: <T as Pointable>::Init) -> usize
pub unsafe fn deref<'a>(ptr: usize) -> &'a T
pub unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T
pub unsafe fn drop(ptr: usize)
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<T> SetParameter for T
pub fn set<T>(&mut self, value: T) -> <T as Parameter<Self>>::Result where
T: Parameter<Self>,
T: Parameter<Self>,
impl<SS, SP> SupersetOf<SS> for SP where
SS: SubsetOf<SP>,
SS: SubsetOf<SP>,
pub fn to_subset(&self) -> Option<SS>
pub fn is_in_subset(&self) -> bool
pub unsafe fn to_subset_unchecked(&self) -> SS
pub fn from_subset(element: &SS) -> SP
impl<T> Supports<T> for T
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,