8#ifndef FCF_DEVMGR_COMMON_ACTIONS_SETUP_HPP_
9#define FCF_DEVMGR_COMMON_ACTIONS_SETUP_HPP_
11#include <ifw/fcf/devmgr/common/events.rad.hpp>
13#include <rad/actionGroup.hpp>
14#include <rad/smAdapter.hpp>
15#include <rad/mal/request.hpp>
16#include <rad/mal/requestor.hpp>
17#include <rad/activity.hpp>
18#include <rad/mal/subscriber.hpp>
19#include <rad/mal/utils.hpp>
20#include <ifw/core/utils/bat/logger.hpp>
22#include <scxml4cpp/Context.h>
34 template<
typename EVENT_TYPE,
typename EXCEPTION_TYPE>
48 boost::asio::io_service& ios,
59 virtual void Start(scxml4cpp::Context* c);
68 virtual void Stop(scxml4cpp::Context* c);
77 virtual void Done(scxml4cpp::Context* c);
86 virtual void Error(scxml4cpp::Context* c);
95 virtual void Timeout(scxml4cpp::Context* c);
101 using ActivityMap = std::map<std::string,std::shared_ptr<scxml4cpp::Activity>>;
103 using ActivityPair = std::pair<std::string, std::shared_ptr<scxml4cpp::Activity>>;
107 boost::asio::io_service& m_io_service;
108 rad::SMAdapter& m_sm;
113 log4cplus::Logger m_logger;
119#include "actionsSetup.ipp"
virtual void Stop(scxml4cpp::Context *c)
ActionsSetup & operator=(const ActionsSetup &)=delete
Disable assignment operator.
std::map< std::string, std::shared_ptr< scxml4cpp::Activity > > ActivityMap
Definition actionsSetup.hpp:101
std::pair< std::string, std::shared_ptr< scxml4cpp::Activity > > ActivityPair
Definition actionsSetup.hpp:103
std::optional< typename EVENT_TYPE::payload_t > SetupRequest
Definition actionsSetup.hpp:100
virtual void Error(scxml4cpp::Context *c)
virtual void Done(scxml4cpp::Context *c)
std::pair< std::string, SetupRequest > RequestPair
Definition actionsSetup.hpp:104
virtual void Timeout(scxml4cpp::Context *c)
ActionsSetup(std::string name, boost::asio::io_service &ios, rad::SMAdapter &sm, DataContext &data_ctx, DeviceFacade &device_facade)
std::map< std::string, SetupRequest > RequestMap
Definition actionsSetup.hpp:102
ActionsSetup(const ActionsSetup &)=delete
Disable copy constructor.
virtual void Start(scxml4cpp::Context *c)
Definition dataContext.hpp:86
Definition deviceFacade.hpp:59
ActionMgr class source file.
Definition actionMgr.cpp:28
actuatorLcsIf class header file.
Definition actionMgr.cpp:28
ActionsEnable class source file.
Definition actionMgr.cpp:28