123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- //
- // Created by zx on 2019/12/30.
- //
- #ifndef LOCATE_TASK_H
- #define LOCATE_TASK_H
- #include "../task/task_command_manager.h"
- #include "../error_code/error_code.h"
- #include <pcl/point_types.h>
- #include <pcl/common/common.h>
- /*
- * 测量结果结构体
- */
- typedef struct LOCATE_INFORMATION
- {
- float locate_x;
- float locate_y;
- float locate_theta;
- float locate_length;
- float locate_width;
- float locate_hight;
- float locate_wheel_base;
- bool locate_correct;
- }Locate_information;
- /*
- * 测量任务类,负责维护测量任务所需的输入参数以及测量的结果
- */
- class Locate_task: public Task_Base
- {
- public:
- Locate_task();
- virtual ~Locate_task();
- //设置测量输入点云
- Error_manager set_locate_cloud(pcl::PointCloud<pcl::PointXYZ>::Ptr cloud);
- //获取输入点云
- pcl::PointCloud<pcl::PointXYZ>::Ptr get_locate_cloud();
- //获取测量结果
- Locate_information get_locate_information();
- //设置测量结果
- Error_manager set_locate_information(Locate_information information);
- //获取文件存放路径
- std::string get_save_path();
- //设置文件村昂路径
- Error_manager set_save_path(std::string path);
- protected:
- //测量算法输入点云
- pcl::PointCloud<pcl::PointXYZ>::Ptr m_locate_cloud_ptr;
- //测量结果
- Locate_information m_locate_information;
- //测量中间文件存放路径
- std::string m_save_path;
- };
- #endif //LOCATE_TASK_H
|