SMACC
Loading...
Searching...
No Matches
smacc_event_generator.h
Go to the documentation of this file.
1/*****************************************************************************************************************
2 * ReelRobotix Inc. - Software License Agreement Copyright (c) 2018
3 * Authors: Pablo Inigo Blasco, Brett Aldrich
4 *
5 ******************************************************************************************************************/
6
7#pragma once
8
9#include <functional>
10#include <memory>
11#include <vector>
12#include <algorithm>
14#include <boost/statechart/event.hpp>
15#include <map>
16
17namespace smacc
18{
19 class ISmaccState;
20 class ISMaccStateMachine;
21
23 {
24 public:
26 virtual ~SmaccEventGenerator();
27
28 template <typename TState, typename TSource>
29 void onStateAllocation();
30
31 virtual void onEntry();
32 virtual void onExit();
33
34 template <typename EventType>
35 void postEvent(const EventType &ev);
36
37 template <typename EventType>
38 void postEvent();
39
40 void initialize(ISmaccState *ownerState);
41 virtual void onInitialized();
42
43 private:
46 };
47
48} // namespace smacc
void initialize(ISmaccState *ownerState)