Apollo 11.0
自动驾驶开放平台
dummy_algorithms.h
浏览该文件的文档.
1/******************************************************************************
2 * Copyright 2018 The Apollo Authors. All Rights Reserved.
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 *****************************************************************************/
16#pragma once
17
18#include <string>
19#include <vector>
20
21#include "cyber/common/macros.h"
29
30namespace apollo {
31namespace perception {
32namespace fusion {
33
35 public:
36 DummyFusionSystem() = default;
37 ~DummyFusionSystem() = default;
38
39 bool Init(const FusionInitOptions& options) override;
40 std::string Name() const override { return "DummyFusionSystem"; }
41
42 bool Fuse(const base::FrameConstPtr& sensor_frame,
43 std::vector<base::ObjectPtr>* fused_objects) override;
44
46};
47
49 public:
52
53 bool Init(const AssociationInitOptions& options) override;
54 bool Associate(const AssociationOptions& options,
55 SensorFramePtr sensor_measurements, ScenePtr scene,
56 AssociationResult* association_result) override;
57
59};
60
61class DummyTracker : public BaseTracker {
62 public:
63 DummyTracker() = default;
64 ~DummyTracker() = default;
65
66 bool Init(TrackPtr track, SensorObjectPtr measurement) override;
67
68 void UpdateWithMeasurement(const TrackerOptions& options,
69 const SensorObjectPtr measurement,
70 double target_timestamp) override;
71
72 void UpdateWithoutMeasurement(const TrackerOptions& options,
73 const std::string& sensor_id,
74 double measurement_timestamp,
75 double target_timestamp) override;
76
77 std::string Name() const override { return "DummyTracker"; }
78
80};
81
82} // namespace fusion
83} // namespace perception
84} // namespace apollo
bool Init(const AssociationInitOptions &options) override
Init base data association config
bool Associate(const AssociationOptions &options, SensorFramePtr sensor_measurements, ScenePtr scene, AssociationResult *association_result) override
associate sensor measurements with global scene
bool Fuse(const base::FrameConstPtr &sensor_frame, std::vector< base::ObjectPtr > *fused_objects) override
fuse a sensor frame
bool Init(const FusionInitOptions &options) override
Init base fusion system config
std::string Name() const override
The name of BaseFusionSystem
std::string Name() const override
The name of BaseTracker
void UpdateWithoutMeasurement(const TrackerOptions &options, const std::string &sensor_id, double measurement_timestamp, double target_timestamp) override
update track state without measurement
bool Init(TrackPtr track, SensorObjectPtr measurement) override
Init tracker with measurement
void UpdateWithMeasurement(const TrackerOptions &options, const SensorObjectPtr measurement, double target_timestamp) override
update track state with measurement
std::shared_ptr< const Frame > FrameConstPtr
Definition frame.h:61
std::shared_ptr< SensorObject > SensorObjectPtr
std::shared_ptr< SensorFrame > SensorFramePtr
std::shared_ptr< Track > TrackPtr
Definition track.h:397
std::shared_ptr< Scene > ScenePtr
Definition scene.h:88
class register implement
Definition arena_queue.h:37