Go to the documentation of this file.
8 #ifndef RAD_ACTIVITY_HPP
9 #define RAD_ACTIVITY_HPP
11 #include <scxml4cpp/Activity.h>
41 using Activity::Activity;
71 inline bool IsStopRequested()
const {
return m_stop_requested.load(std::memory_order_acquire); }
82 std::atomic<bool> m_stop_requested;
119 std::thread m_thread;
124 #endif // RAD_ACTIVITY_HPP
void StartThread() override
Definition: activity.cpp:45
std::string GetName() const
Definition: activity.cpp:73
name
Definition: wscript:8
Definition: Activity.h:40
ThreadBaseActivity(ThreadBaseActivity const &)=delete
bool IsThreadJoined() const override
Definition: activity.cpp:37
virtual void JoinThread()=0
void JoinThread() override
Definition: activity.cpp:59
virtual bool IsThreadJoined() const =0
ThreadActivity & operator=(const ThreadActivity &)=delete
virtual void StartThread()=0
Definition: actionCallback.hpp:21
virtual pthread_t GetNativeHandle() const =0
int SetName(const std::string &name)
Definition: activity.cpp:92
ThreadActivity(const ThreadActivity &)=delete
bool IsStopRequested() const
To be implemented by child classes.
Definition: activity.hpp:71
pthread_t GetNativeHandle() const override
Definition: activity.cpp:115
Definition: activity.hpp:39
void stop(scxml4cpp::Context *c) override
Definition: activity.cpp:30
Definition: activity.hpp:101
void start(scxml4cpp::Context *c) override
Definition: activity.cpp:23