Program Listing for File taskable.hpp
↰ Return to documentation for file (cosm/ta/taskable.hpp
)
#pragma once
/*******************************************************************************
* Includes
******************************************************************************/
#include "rcppsw/common/common.hpp"
#include "rcppsw/metrics/base_metrics.hpp"
#include "cosm/cosm.hpp"
/*******************************************************************************
* Namespaces/Decls
******************************************************************************/
namespace cosm::ta {
/*******************************************************************************
* Class Decls
******************************************************************************/
class taskable_argument;
/*******************************************************************************
* Class Definitions
******************************************************************************/
class taskable : public virtual rmetrics::base_metrics {
public:
taskable(void) = default;
~taskable(void) override;
virtual void task_execute(void) = 0;
virtual bool task_finished(void) const = 0;
virtual bool task_running(void) const = 0;
virtual void task_reset(void) {}
virtual void task_start(RCPPSW_UNUSED taskable_argument* c_arg) = 0;
};
} /* namespace cosm::ta */