carographer流程
node_main.cc 93 Run启动
58 Node初始化
64 node.StartTrajectoryWithDefaultTopics(trajectory_options);
node.cc 517 StartTrajectoryWithDefaultTopics
520 AddTrajectory(options, DefaultSensorTopics());
335 AddTrajectory
340 map_builder_bridge_.AddTrajectory(expected_sensor_ids, options);
map_builder_bridge.cc 120 AddTrajectory
124 const int trajectory_id = map_builder_->AddTrajectoryBuilder
130 输出创建轨迹trajectory_id
map_builder_interface.h 54 虚函数AddTrajectoryBuilder
map_builder.h 45 重写虚函数AddTrajectoryBuilder
map_builder.cc 98 重写虚函数AddTrajectoryBuilder
102 trajectory_id = trajectory_builders_.size()
121 local_trajectory_builder = common::make_unique<LocalTrajectoryBuilder2D>(trajectory_options.trajectory_builder_2d_options(),SelectRangeSensorIds(expected_sensor_ids));
local_trajectory_builder_2d.cc 36 构造函数active_submaps_(options.submaps_options()),
submap_2d.cc 129 构造函数ActiveSubmaps2D
134 AddSubmap(Eigen::Vector2f::Zero());添加第一个submap
×××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××
collator_interface.h 54 虚函数AddSensorData
49 虚函数FinishTrajectory(int trajectory_id)
trajectory_collator.h 49 重写虚函数 AddSensorData
47 重写虚函数FinishTrajectory
collator.cc 36 重写虚函数Collator::FinishTrajectory(const int trajectory_id)
42 重写虚函数void Collator::AddSensorData(const int trajectory_id,std::unique_ptr<Data> data)
ordered_multi_queue.cc 54 MarkQueueAsFinished 60 Dispatch()
63 Add 64 Dispatch()
92 Dispatch()
124 const common::Time common_start_time =GetCommonStartTime(next_queue_key.trajectory_id);
161 GetCommonStartTime(const int trajectory_id)
172 输出为轨迹0提供好传感器的时间
×××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××8
sensor_bridge.cc 64 HandleOdometryMessage 69 trajectory_builder_->AddSensorData
75 HandleNavSatFixMessage 79 trajectory_builder_->AddSensorData
101 HandleLandmarkMessage 104 trajectory_builder_->AddSensorData
137 HandleImuMessage 141 trajectory_builder_->AddSensorData
222 HandleRangefinder 228 trajectory_builder_->AddSensorData
trajectory_builder_interface.h 96-107 虚函数AddSensorData
global_trajectory_builder.cc 52/94/103/113 虚函数重载AddSensorData
global_trajectory_builder.h 33/39 CreateGlobalTrajectoryBuilder2D/CreateGlobalTrajectoryBuilder3D
map_builder.cc 129/114 CreateGlobalTrajectoryBuilder2D/CreateGlobalTrajectoryBuilder3D
collated_trajectory_builder.cc 33 构造函数CollatedTrajectoryBuilder,继承TrajectoryBuilderInterface
trajectory_builder_interface.h 48 类定义TrajectoryBuilderInterface
map_builder.cc 126/111 trajectory_builders_.push_back
98 AddTrajectoryBuilder
×××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××
global_trajectory_builder.cc 52/94/103/113 虚函数重载AddSensorData
52 AddSensorData 58 local_trajectory_builder_->AddRangeData
86 AddSensorData 89 local_trajectory_builder_->AddImuData(imu_data); 91 pose_graph_->AddImuData(trajectory_id_, imu_data);
94 AddSensorData 98 local_trajectory_builder_->AddOdometryData(odometry_data); 100 pose_graph_->AddOdometryData(trajectory_id_, odometry_data);
map_builder.cc 119 std::unique_ptr<LocalTrajectoryBuilder2D> local_trajectory_builder;
local_trajectory_builder_2d.h 71 AddRangeData
74 AddImuData
75 AddOdometryData
local_trajectory_builder_2d.cc 112 range_data_collator_.AddRangeData(sensor_id, unsynchronized_data);\
288 extrapolator_->AddImuData(imu_data); /初始化extrapolator_
298 extrapolator_->AddOdometryData(odometry_data);
---->
range_data_collator.cc 28 AddRangeData
pose_extrapolator.cc 91 AddImuData
98 AddOdometryData
*********************************************************************************************************************************************************
collated_trajectory_builder.cc 56 HandleCollatedSensorData
46 回调函数HandleCollatedSensorData
collator_interface.h 43 AddTrajectory
trajectory_collator.h 43 AddTrajectory
×××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××
submap_2d.cc 187 输出添加submap信息
177 AddSubmap
148 AddSubmap(range_data.origin.head<2>());
143 InsertRangeData
local_trajectory_builder_2d.cc 266 active_submaps_.InsertRangeData(range_data_in_local);
251 InsertIntoSubmap
240 InsertIntoSubmap(time, range_data_in_local, gravity_aligned_range_data,pose_estimate, gravity_alignment.rotation());
210 AddAccumulatedRangeData
199 AddAccumulatedRangeData
108 AddRangeData
××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××
constraint_builder_2d.cc 281 输出约束信息
270 RunWhenDoneCallback()
154 设置回调函数when_done_task_->SetWorkItem([this] { RunWhenDoneCallback(); });
146 WhenDone
pose_graph_2d.cc 304 constraint_builder_.WhenDone
384 constraint_builder_.WhenDone
410 constraint_builder_.WhenDone
×××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××
optimization_problem_2d.cc 306 LOG(INFO) << summary.FullReport();
×××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××
constraint_builder_2d.cc 266 LOG(INFO) << info.str();
180 ComputeConstraint
97 ComputeConstraint 75 MaybeAddConstraint
122 ComputeConstraint 107 MaybeAddGlobalConstraint
pose_graph_2d.cc 214 constraint_builder_.MaybeAddConstraint
219 constraint_builder_.MaybeAddGlobalConstraint
192 ComputeConstraint
276 ComputeConstraint(node_id, submap_id_data.id);
235 ComputeConstraintsForNode
131 ComputeConstraintsForNode(node_id, insertion_submaps,newly_finished_submap);
103 AddNode
local_slam_result_2d.cc 39 AddNode(std::make_shared<const mapping::TrajectoryNode::Data> 29 AddToPoseGraph
global_trajectory_builder.cc 68 auto node_id = pose_graph_->AddNode 52 AddSensorData
--->
global_trajectory_builder.cc 122 local_slam_result_data->AddToPoseGraph(trajectory_id_, pose_graph_);
118 虚函数重载AddLocalSlamResultData
trajectory_builder_interface.h 111 虚函数 AddLocalSlamResultData
local_slam_result_2d.cc 25 trajectory_builder->AddLocalSlamResultData
×××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××
carographer流程的更多相关文章
- Linux下服务器端开发流程及相关工具介绍(C++)
去年刚毕业来公司后,做为新人,发现很多东西都没有文档,各种工具和地址都是口口相传的,而且很多时候都是不知道有哪些工具可以使用,所以当时就想把自己接触到的这些东西记录下来,为后来者提供参考,相当于一个路 ...
- 基于netty http协议栈的轻量级流程控制组件的实现
今儿个是冬至,所谓“冬大过年”,公司也应景五点钟就放大伙儿回家吃饺子喝羊肉汤了,而我本着极高的职业素养依然坚持留在公司(实则因为没饺子吃没羊肉汤喝,只能呆公司吃食堂……).趁着这一个多小时的时间,想跟 ...
- 通过重建Hosting系统理解HTTP请求在ASP.NET Core管道中的处理流程[下]:管道是如何构建起来的?
在<中篇>中,我们对管道的构成以及它对请求的处理流程进行了详细介绍,接下来我们需要了解的是这样一个管道是如何被构建起来的.总的来说,管道由一个服务器和一个HttpApplication构成 ...
- nginx+iis+redis+Task.MainForm构建分布式架构 之 (redis存储分布式共享的session及共享session运作流程)
本次要分享的是利用windows+nginx+iis+redis+Task.MainForm组建分布式架构,上一篇分享文章制作是在windows上使用的nginx,一般正式发布的时候是在linux来配 ...
- 8、Struts2 运行流程分析
1.流程分析: 请求发送给 StrutsPrepareAndExecuteFilter StrutsPrepareAndExecuteFilter 询问 ActionMapper: 该请求是否是一个 ...
- Hawk 6. 高级话题:子流程系统
子流程的定义 当流程设计的越来越复杂,越来越长时,就难以进行管理了.因此,采用模块化的设计才会更加合理.本节我们介绍子流程的原理和使用. 所谓子流程,就是能先构造出一个流程,然后被其他流程调用.被调用 ...
- 流程开发Activiti 与SpringMVC整合实例
流程(Activiti) 流程是完成一系列有序动作的概述.每一个节点动作的结果将对后面的具体操作步骤产生影响.信息化系统中流程的功能完全等同于纸上办公的层级审批,尤其在oa系统中各类电子流提现较为明显 ...
- zookeeper源码分析之五服务端(集群leader)处理请求流程
leader的实现类为LeaderZooKeeperServer,它间接继承自标准ZookeeperServer.它规定了请求到达leader时需要经历的路径: PrepRequestProcesso ...
- zookeeper源码分析之四服务端(单机)处理请求流程
上文: zookeeper源码分析之一服务端启动过程 中,我们介绍了zookeeper服务器的启动过程,其中单机是ZookeeperServer启动,集群使用QuorumPeer启动,那么这次我们分析 ...
随机推荐
- Win32汇编常用算数指令
汇编语言(assembly language)是一种用于电子计算机.微处理器.微控制器或其他可编程器件的低级语言,亦称为符号语言.在汇编语言中,用助记符(Mnemonics)代替机器指令的操作码,用地 ...
- ueditor 编译出错
错误 CS0433 类型“Uploader”同时存在于“com.80community.xy, Version=1.0.0.0, Culture=neutral, PublicKeyToken=nul ...
- SharePoint Resize app
//Global Variables used in different functions. var widthSelected=null; var senderId; var hostUrl = ...
- (四)创建基于maven的javaFX+springboot项目,用户界面与后台逻辑分离方式
下面来介绍创建maven的javaFX+springboot项目,基于用户界面与后天逻辑分离的方式,用户界面使用fxml文件来常见,类似于jsp,可以引入css文件修饰界面 maven依赖 <d ...
- python之字符串类型及其操作
1.1字符串类型的表示 字符串是字符的序列表示,可以由一对单引号('). 双引号(")或三引号(’")构成.其中,单引号和双引号都可以表示单行字符串,两者作用相同.使用单引号时,双 ...
- js之数据类型(对象类型——构造器对象——对象)
JavaScript中除了原始类型,null,undefined之外就是对象了,对象是属性的集合,每个属性都是由键值对(值可以是原始值,比如说是数字,字符串,也可以是对象)构成的.对象又可分为构造器对 ...
- vue进阶:vuex(数据池)
非父子组件传值 vuex 一.非父子组件传值 基于父子组件通信与传值实现非父子组件传值的示例关键代码: <template> <div> <!-- 学员展示 --> ...
- JS中有两种自加法操作
JS中有两种自加法操作.它们的运算符是++,它们的函数是向1添加运算符. 我和我的区别在于操作的顺序和组合的方向. 其中:++var被称为预自动添加,变量执行自动添加操作后.它的操作是先执行自动加法操 ...
- 用jquery写出图片自动轮播效果
相关代码如下,只要把代码粘贴进编辑器,修改图片路径,即可看到效果. 1.html部分 <body> <ul class="banner"> < ...
- 第十五章、Python多线程同步锁,死锁和递归锁
目录 第十五章.Python多线程同步锁,死锁和递归锁 1. 引子: 2.同步锁 3.死锁 引子: 4.递归锁RLock 原理: 不多说,放代码 总结: 5. 大总结 第十五章.Python多线程同步 ...