|
@@ -13,11 +13,13 @@ Laser_task::Laser_task()
|
|
|
//构造函数锁定任务类型为LASER_TASK,后续不允许更改
|
|
|
m_task_type = LASER_TASK;
|
|
|
m_task_statu = TASK_CREATED;
|
|
|
- //m_task_statu_information默认为空
|
|
|
+ m_task_statu_information.clear();
|
|
|
+ m_task_error_manager.error_manager_clear_all();
|
|
|
|
|
|
m_task_frame_maxnum = 0;
|
|
|
+ m_task_save_flag = false;//默认不保存,false
|
|
|
+ m_task_save_path.clear();
|
|
|
mp_task_point_cloud = NULL;
|
|
|
- //m_task_error_manager 默认为空
|
|
|
mp_task_cloud_lock=NULL;
|
|
|
}
|
|
|
//析构函数
|
|
@@ -47,11 +49,13 @@ Error_manager Laser_task::task_init(Task_statu task_statu,
|
|
|
|
|
|
m_task_statu = task_statu;
|
|
|
m_task_statu_information.clear();
|
|
|
+ m_task_error_manager.error_manager_clear_all();
|
|
|
|
|
|
m_task_frame_maxnum = TASK_FRAME_MAXNUM_DEFAULT;
|
|
|
+ m_task_save_flag = false;
|
|
|
+ m_task_save_path.clear();
|
|
|
mp_task_cloud_lock=p_task_cloud_lock;
|
|
|
mp_task_point_cloud = p_task_point_cloud;
|
|
|
- m_task_error_manager.error_manager_clear_all();
|
|
|
|
|
|
return Error_code::SUCCESS;
|
|
|
}
|
|
@@ -67,7 +71,9 @@ Error_manager Laser_task::task_init(Task_statu task_statu,
|
|
|
std::string & task_statu_information,
|
|
|
unsigned int task_frame_maxnum,
|
|
|
pcl::PointCloud<pcl::PointXYZ>::Ptr p_task_point_cloud,
|
|
|
- std::mutex* p_task_cloud_lock)
|
|
|
+ std::mutex* p_task_cloud_lock,
|
|
|
+ bool task_save_flag ,
|
|
|
+ std::string task_save_path )
|
|
|
{
|
|
|
if(p_task_point_cloud.get() == NULL)
|
|
|
{
|
|
@@ -90,6 +96,8 @@ Error_manager Laser_task::task_init(Task_statu task_statu,
|
|
|
{
|
|
|
m_task_frame_maxnum = task_frame_maxnum;
|
|
|
}
|
|
|
+ m_task_save_flag = task_save_flag;
|
|
|
+ m_task_save_path = task_save_path;
|
|
|
mp_task_cloud_lock=p_task_cloud_lock;
|
|
|
mp_task_point_cloud = p_task_point_cloud;
|
|
|
m_task_error_manager.error_manager_clear_all();
|
|
@@ -170,6 +178,12 @@ void Laser_task::set_task_save_path(std::string task_save_path)
|
|
|
{
|
|
|
m_task_save_path=task_save_path;
|
|
|
}
|
|
|
+//设置采集的点云保存标志位和路径
|
|
|
+void Laser_task::set_task_save_flag_and_path(bool task_save_flag, std::string task_save_path)
|
|
|
+{
|
|
|
+ m_task_save_flag=task_save_flag;
|
|
|
+ m_task_save_path=task_save_path;
|
|
|
+}
|
|
|
//设置 三维点云容器的智能指针
|
|
|
void Laser_task::set_task_point_cloud(pcl::PointCloud<pcl::PointXYZ>::Ptr p_task_point_cloud)
|
|
|
{
|