Namespace o80::internalΒΆ

namespace internal

Typedefs

typedef std::shared_ptr<StandaloneRunnerInterface> StandalonePtr

Functions

template<class ROBOT_STATE>
THREAD_FUNCTION_RETURN_TYPE run_commands_helper(void *arg)
template<class ROBOT_STATE>
THREAD_FUNCTION_RETURN_TYPE run_completed_commands_helper(void *arg)
template<class ROBOT_STATE>
THREAD_FUNCTION_RETURN_TYPE run_waiting_for_completion_helper(void *arg)
template<class ROBOT_STATE>
THREAD_FUNCTION_RETURN_TYPE run_completion_reported_helper(void *arg)
template<class ROBOT_STATE>
THREAD_FUNCTION_RETURN_TYPE run_received_helper(void *arg)
template<class ROBOT_STATE>
THREAD_FUNCTION_RETURN_TYPE run_starting_helper(void *arg)
template<class RobotDriver, class o80Standalone>
THREAD_FUNCTION_RETURN_TYPE run_helper(void *arg)
StandalonePtr &get_standalone(const std::string &segment_id)
void add_standalone(const std::string &segment_id, StandalonePtr standalone)
bool standalone_exists(const std::string &segment_id)
template<class RobotDriver, class o80Standalone>
class StandaloneRunner : public o80::internal::StandaloneRunnerInterface

Public Functions

template<typename ...Args>
StandaloneRunner(std::string segment_id, double frequency, bool bursting, Args&&... args)
~StandaloneRunner()
virtual void start()
virtual void stop()
virtual void run()
virtual bool is_running()

Private Members

bool bursting_
std::atomic<bool> running_
real_time_tools::RealTimeThread thread_
std::shared_ptr<RobotDriver> driver_ptr_
o80Standalone standalone_
class StandaloneRunnerInterface

Subclassed by o80::internal::StandaloneRunner< RobotDriver, o80Standalone >

Public Functions

virtual void start() = 0
virtual void stop() = 0
virtual void run() = 0
virtual bool is_running() = 0