PIP 5.6.1
Platform-Independent Primitives
Открытые члены | Полный список членов класса
Класс PITransitionTimeout

Переход, который автоматически срабатывает по истечении таймаута. Подробнее...

#include <pistatemachine_transition.h>

Граф наследования:PITransitionTimeout:
Inheritance graph
[см. легенду]

Открытые члены

 PITransitionTimeout (PIStateBase *source, PIStateBase *target, PISystemTime timeout)
 Создает переход, который срабатывает через timeout, пока исходное состояние активно.
 
 ~PITransitionTimeout ()
 Останавливает внутренний таймер и уничтожает переход.
 
- Открытые члены унаследованные от PITransitionBase
 PITransitionBase (PIStateBase *source, PIStateBase *target, int event_id)
 Создает переход из source в target для указанного идентификатора события.
 
virtual ~PITransitionBase ()
 Уничтожает переход и сохраненную guard-функцию.
 
PIStateMachinemachine () const
 Возвращает корневую машину состояний.
 
PIStateBasesource () const
 Возвращает исходное состояние.
 
PIStateBasetarget () const
 Возвращает целевое состояние.
 
template<typename R , typename... Args>
PITransitionBaseaddGuard (std::function< R(Args...)> f)
 Задает guard-функцию, которая должна возвращать bool.
 
template<typename L >
PITransitionBaseaddGuard (L f)
 Задает guard-функцию из lambda или другого вызываемого объекта.
 
template<typename... Args>
bool testGuard (Args... args)
 Проверяет guard-функцию на аргументах события, переданных переходу.
 
PITransitionBaseaddAction (std::function< void()> a)
 Задает действие, выполняемое при срабатывании перехода.
 
void makeAction ()
 Выполняет действие перехода, если оно задано.
 
void trigger ()
 Запускает переход и обновляет активные состояния.
 

Подробное описание

Переход, который автоматически срабатывает по истечении таймаута.