Go to the documentation of this file.
33 class StatechartContext;
50 std::string contextString;
52 bool checkEventIsHandled(
const EventPtr& event)
const;
63 template <
class EventClass>
66 EventPtr event =
new EventClass(this->stateName);
70 EventPtr createEvent(
const std::string& eventName,
const StringVariantContainerBaseMap& properties = StringVariantContainerBaseMap());
82 template <
class Event
class>
99 template <
class Event
class>
105 template <
class Event
class>
108 return setCounterEvent(counterThreshold, createEvent<Eventclass>(), initialValue);
122 template <
class Event>
125 sendEvent(createEvent<Event>(), eventProcessor);
140 std::vector< ConditionIdentifier > __installedConditionIdentifiers;
141 std::vector< ChannelRefBasePtr > __installedTimerChannelRefs;
142 std::vector< ChannelRefBasePtr > __installedCounterChannelRefs;
144 void _removeInstalledConditions()
override;
IceInternal::Handle< ChannelRef > ChannelRefPtr
void removeCondition(ConditionIdentifier conditionId)
Utility function to remove an installed condition on the distributed conditionhandler.
void sendEvent(StateBasePtr eventProcessor=nullptr)
ActionEventIdentifier setCounterEvent(int counterThreshold, int initialValue=0)
ActionEventIdentifier setCounterEvent(int counterThreshold, const EventPtr &evt, int initialValue=0)
ChannelRefBasePtr actionId
Struct for the return value of setCounter/TimerEvent.
ActionEventIdentifier setTimeoutEvent(int timeoutDurationMs, const EventPtr &evt)
Utility function to start a timer on the systemObserver and register an event on the conditionHandler...
const VariantTypeId ChannelRef
ConditionIdentifier installCondition(const Term &condition, const EventPtr evt, const std::string &desc="")
Utility function to install a condition on the distributed conditionhandler.
ConditionIdentifier installCondition(const Term &condition, const std::string &desc="")
Utility function to install a condition on the distributed conditionhandler.
ActionEventIdentifier setTimeoutEvent(int timeoutDurationMs)
ConditionIdentifier conditionId
void removeCounterEvent(const ActionEventIdentifier &id)
void sendEvent(const EventPtr event, StateBasePtr eventProcessor=nullptr)
Function to send an event to a specific state from an onEnter()-function. Must not be called anywhere...
EventPtr createEvent()
Utility function to create a new Event.
void removeTimeoutEvent(const ActionEventIdentifier &id)
This file offers overloads of toIce() and fromIce() functions for STL container types.
IceInternal::Handle< StatechartContext > StatechartContextPtr