8 #ifndef FCF_DEVMGR_COMMON_ACTIONS_SETUP_HPP_
9 #define FCF_DEVMGR_COMMON_ACTIONS_SETUP_HPP_
12 #include <fcf/devmgr/common/events.rad.hpp>
14 #include <rad/actionGroup.hpp>
15 #include <rad/smAdapter.hpp>
16 #include <rad/mal/request.hpp>
17 #include <rad/mal/requestor.hpp>
18 #include <rad/activity.hpp>
19 #include <rad/mal/subscriber.hpp>
20 #include <rad/mal/utils.hpp>
21 #include <utils/bat/logger.hpp>
24 #include <scxml4cpp/Context.h>
35 template<
typename EVENT_TYPE,
typename EXCEPTION_TYPE>
49 boost::asio::io_service& ios,
60 virtual void Start(scxml4cpp::Context* c);
69 virtual void Stop(scxml4cpp::Context* c);
78 virtual void Done(scxml4cpp::Context* c);
87 virtual void Error(scxml4cpp::Context* c);
96 virtual void Timeout(scxml4cpp::Context* c);
102 using ActivityMap = std::map<std::string,std::shared_ptr<scxml4cpp::Activity>>;
104 using ActivityPair = std::pair<std::string, std::shared_ptr<scxml4cpp::Activity>>;
108 boost::asio::io_service& m_io_service;
109 rad::SMAdapter& m_sm;
114 log4cplus::Logger m_logger;
120 #include "actionsSetup.ipp"
Definition: actionsSetup.hpp:37
std::pair< std::string, std::shared_ptr< scxml4cpp::Activity > > ActivityPair
Definition: actionsSetup.hpp:104
ActionsSetup(std::string name, boost::asio::io_service &ios, rad::SMAdapter &sm, DataContext &data_ctx, DeviceFacade &device_facade)
ActionsSetup(const ActionsSetup &)=delete
Disable copy constructor.
std::map< std::string, SetupRequest > RequestMap
Definition: actionsSetup.hpp:103
std::map< std::string, std::shared_ptr< scxml4cpp::Activity > > ActivityMap
Definition: actionsSetup.hpp:102
virtual void Timeout(scxml4cpp::Context *c)
virtual void Start(scxml4cpp::Context *c)
virtual void Error(scxml4cpp::Context *c)
std::pair< std::string, SetupRequest > RequestPair
Definition: actionsSetup.hpp:105
virtual void Done(scxml4cpp::Context *c)
virtual void Stop(scxml4cpp::Context *c)
ActionsSetup & operator=(const ActionsSetup &)=delete
Disable assignment operator.
std::optional< typename EVENT_TYPE::payload_t > SetupRequest
Definition: actionsSetup.hpp:101
Definition: dataContext.hpp:90
Definition: deviceFacade.hpp:54
Definition: actionMgr.cpp:29