@startuml @startuml skinparam classAttributeIconSize 0 <<<<<<< HEAD title Task_Base 任务单基类 ======= title binary_buf是二进制缓存 >>>>>>> origin/hl enum Task_type { //任务类型 UNKNOW_TASK =0, //未知任务单//初始化,默认值 LASER_TASK =1, //雷达扫描任务, LOCATE_TASK =2, //测量任务 PLC_TASK =3, //上传PLC任务 } enum Task_statu { //任务状态,如果任务故障,任务状态改为TASK_OVER,然后在m_task_error_manager 补充错误码。 TASK_CREATED =0, //创建状态,默认值 TASK_SIGNED =1, //已签收 TASK_WORKING =2, //处理中 TASK_OVER =3, //已结束 } class Task_Base { //任务单基类 ==public:== ~Task_Base(); .. //初始化任务单,初始任务单类型为 UNKONW_TASK virtual Error_manager init(); .. //更新任务单 //task_statu: 任务状态 //statu_information:状态说明 Error_manager update_statu(Task_statu task_statu,std::string statu_information=""); .. //获取任务类型 Task_type get_task_type(); .. //获取任务单状态 Task_statu get_statu(); .. //获取状态说明 std::string get_statu_information(); .. //获取 错误码 Error_manager& get_task_error_manager(); .. //设置 错误码 void set_task_error_manager(Error_manager & error_manager); ==protected:== Task_Base(); ==protected:== Task_type m_task_type; //任务类型 Task_statu m_task_statu; //任务状态 std::string m_task_statu_information; //任务状态说明 //错误码,任务故障信息,任务输出 Error_manager m_task_error_manager; } class Error_manager { //错误码管理 } Task_Base <-- Error_manager : include Task_Base <-- Task_type : include Task_Base <-- Task_statu : include @enduml