13#ifndef RTCTK_COMPONENTFRAMEWORK_THREADACTIVITY_HPP
14#define RTCTK_COMPONENTFRAMEWORK_THREADACTIVITY_HPP
21#include <scxml4cpp/Activity.h>
44 void start(scxml4cpp::Context*
c)
override;
45 void stop(scxml4cpp::Context*
c)
override;
48 log4cplus::Logger& m_logger;
54 std::future<void> m_thread_observer;
55 std::atomic<bool> m_is_stopped;
Class that handles state machine activities.
Definition threadActivity.hpp:28
ThreadActivity & operator=(const ThreadActivity &)=delete
~ThreadActivity() override
Definition threadActivity.cpp:34
std::function< void()> SuccessMethod
Definition threadActivity.hpp:31
ThreadActivity(const ThreadActivity &)=delete
void start(scxml4cpp::Context *c) override
Definition threadActivity.cpp:37
std::function< void(std::exception_ptr)> FailureMethod
Definition threadActivity.hpp:32
ThreadActivity(const std::string &id, ActivityMethod activity, SuccessMethod on_success=nullptr, FailureMethod on_failure=nullptr)
Definition threadActivity.cpp:22
std::function< void(StopToken)> ActivityMethod
Definition threadActivity.hpp:30
void stop(scxml4cpp::Context *c) override
Definition threadActivity.cpp:67
Logging Support Library based on log4cplus.
Definition commandReplier.cpp:22
rad::StopToken StopToken
Definition stopToken.hpp:20
rad::StopSource StopSource
Definition stopToken.hpp:19
elt::mal::future< std::string > InjectReqRepEvent(StateMachineEngine &engine)
Definition malEventInjector.hpp:23