Apollo
11.0
自动驾驶开放平台
third_party_perception_smartereye.h
浏览该文件的文档.
1
/******************************************************************************
2
* Copyright 2020 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
21
#pragma once
22
23
#include <memory>
24
25
#include "modules/common_msgs/sensor_msgs/smartereye.pb.h"
26
#include "
modules/third_party_perception/third_party_perception_base.h
"
27
32
namespace
apollo
{
33
namespace
third_party_perception {
34
35
class
ThirdPartyPerceptionSmartereye
:
public
ThirdPartyPerception
{
36
public
:
37
explicit
ThirdPartyPerceptionSmartereye
(
apollo::cyber::Node
*
const
node);
38
ThirdPartyPerceptionSmartereye
() =
default
;
39
~ThirdPartyPerceptionSmartereye
() =
default
;
40
// Upon receiving smartereye data
41
void
OnSmartereye
(
const
apollo::drivers::SmartereyeObstacles
& message);
42
void
OnSmartereyeLanemark
(
const
apollo::drivers::SmartereyeLanemark
&);
43
bool
Process
(
44
apollo::perception::PerceptionObstacles
*
const
response)
override
;
45
46
private
:
47
apollo::perception::PerceptionObstacles
eye_obstacles_;
48
apollo::drivers::SmartereyeLanemark
smartereye_lanemark_;
49
std::shared_ptr<apollo::cyber::Reader<apollo::drivers::SmartereyeObstacles>>
50
smartereye_obstacles_reader_ =
nullptr
;
51
std::shared_ptr<apollo::cyber::Reader<apollo::drivers::SmartereyeLanemark>>
52
smartereye_lanemark_reader_ =
nullptr
;
53
};
54
55
}
// namespace third_party_perception
56
}
// namespace apollo
apollo::cyber::Node
Node is the fundamental building block of Cyber RT.
Definition
node.h:44
apollo::third_party_perception::ThirdPartyPerceptionSmartereye
Definition
third_party_perception_smartereye.h:35
apollo::third_party_perception::ThirdPartyPerceptionSmartereye::~ThirdPartyPerceptionSmartereye
~ThirdPartyPerceptionSmartereye()=default
apollo::third_party_perception::ThirdPartyPerceptionSmartereye::OnSmartereyeLanemark
void OnSmartereyeLanemark(const apollo::drivers::SmartereyeLanemark &)
Definition
third_party_perception_smartereye.cc:56
apollo::third_party_perception::ThirdPartyPerceptionSmartereye::Process
bool Process(apollo::perception::PerceptionObstacles *const response) override
Definition
third_party_perception_smartereye.cc:63
apollo::third_party_perception::ThirdPartyPerceptionSmartereye::ThirdPartyPerceptionSmartereye
ThirdPartyPerceptionSmartereye()=default
apollo::third_party_perception::ThirdPartyPerceptionSmartereye::OnSmartereye
void OnSmartereye(const apollo::drivers::SmartereyeObstacles &message)
Definition
third_party_perception_smartereye.cc:48
apollo::third_party_perception::ThirdPartyPerception
Definition
third_party_perception_base.h:44
apollo
class register implement
Definition
arena_queue.h:37
apollo::drivers::SmartereyeLanemark
Definition
smartereye.proto:234
apollo::drivers::SmartereyeObstacles
Definition
smartereye.proto:228
apollo::perception::PerceptionObstacles
Definition
perception_obstacle.proto:246
third_party_perception_base.h
modules
third_party_perception
third_party_perception_smartereye.h