12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879 |
- @startuml
- title 测量系统主框架结果图
- class System_Manager
- {
- +System_Manager();
- +~System_Manager();
- +//初始化各个模块,包括雷达,plc,locater,terminor()
- +//1,读取运行环境下setting目录下的laser.prototxt,plc.prototxt,locater.prototxt,terminal.prototxt()
- +//2,根据配置创建雷达,plc,locater,terminal()
- +Error_manager init();
- +//读取protobuf 配置文件()
- +//file:文件()
- +//parameter:要读取的配置()
- +static bool read_proto_param(std::string file, ::google::protobuf::Message& parameter);
- -//plc指令回调函数,当plc收到测量指令后,调用此回调函数()
- -//terminal_id:收到指令的终端编号()
- -//owner:this指针()
- -static Error_manager plc_command_callback(int terminal_id,void* owner);
- -std::vector<Laser_base*> m_laser_vector;
- -std::vector<Terminor_Command_Executor*> m_terminal_vector;
- -Locater* mp_locater;
- -Plc_Communicator* mp_plc;
- -//结果检验工具
- -Verify_result* mp_verify_result_tool;
- -///terminoal 配置
- -Terminal::Terminor_parameter_all m_terminal_parameter_all;
- -//万集雷达管理对象
- -Fence_controller* mp_wj_controller;
- }
- note bottom of Plc_Communicator
- 详见 plc 模块
- end note
- note bottom of Verify_result
- 详见 verify 模块
- end note
- note bottom of Fence_controller
- 详见 wj_lidar 模块
- end note
- note bottom of Locater
- 详见 locate 模块
- end note
- note bottom of Laser_base
- 详见 laser 模块
- end note
- note bottom of Terminor_parameter_all
- 详见 terminor 模块
- end note
- note bottom of Terminor_Command_Executor
- 详见 terminor 模块
- end note
- note left of System_Manager
- 系统管理类
- 负责各个模块配置的读取
- 负责各个模块的创建,运行,释放
- end note
- System_Manager --> Plc_Communicator
- System_Manager --> Verify_result
- System_Manager --> Fence_controller
- System_Manager --> Locater
- System_Manager --> Laser_base
- System_Manager --> Terminor_Command_Executor
- System_Manager --> Terminor_parameter_all
- @enduml
|