Apollo
11.0
自动驾驶开放平台
third_party_perception_component.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
17
#pragma once
18
19
#include <memory>
20
#include <string>
21
#include <vector>
22
23
#include "
cyber/component/component.h
"
24
#include "
cyber/component/timer_component.h
"
25
#include "modules/common_msgs/sensor_msgs/sensor_image.pb.h"
26
#include "
modules/third_party_perception/third_party_perception_base.h
"
27
#include "
modules/third_party_perception/third_party_perception_mobileye.h
"
28
#include "
modules/third_party_perception/third_party_perception_smartereye.h
"
29
30
namespace
apollo
{
31
namespace
third_party_perception {
32
33
class
ThirdPartyPerceptionComponent
final
34
:
public
apollo::cyber::TimerComponent
{
35
public
:
36
ThirdPartyPerceptionComponent
() =
default
;
37
~ThirdPartyPerceptionComponent
() =
default
;
38
39
public
:
40
bool
Init
()
override
;
41
bool
Proc
()
override
;
42
43
private
:
44
std::shared_ptr<
45
apollo::cyber::Writer<apollo::perception::PerceptionObstacles>
>
46
writer_ =
nullptr
;
47
std::shared_ptr<ThirdPartyPerception> perception_ =
nullptr
;
48
};
49
50
CYBER_REGISTER_COMPONENT
(
ThirdPartyPerceptionComponent
)
51
}
// namespace third_party_perception
52
}
// namespace apollo
apollo::cyber::TimerComponent
Definition
timer_component.h:35
apollo::cyber::Writer
Definition
writer.h:42
apollo::third_party_perception::ThirdPartyPerceptionComponent
Definition
third_party_perception_component.h:34
apollo::third_party_perception::ThirdPartyPerceptionComponent::Init
bool Init() override
Definition
third_party_perception_component.cc:27
apollo::third_party_perception::ThirdPartyPerceptionComponent::Proc
bool Proc() override
The Proc logic of the component, which called by the CyberRT frame.
Definition
third_party_perception_component.cc:56
apollo::third_party_perception::ThirdPartyPerceptionComponent::ThirdPartyPerceptionComponent
ThirdPartyPerceptionComponent()=default
apollo::third_party_perception::ThirdPartyPerceptionComponent::~ThirdPartyPerceptionComponent
~ThirdPartyPerceptionComponent()=default
component.h
CYBER_REGISTER_COMPONENT
#define CYBER_REGISTER_COMPONENT(name)
Definition
component.h:657
apollo
class register implement
Definition
arena_queue.h:37
third_party_perception_base.h
third_party_perception_mobileye.h
third_party_perception_smartereye.h
timer_component.h
modules
third_party_perception
third_party_perception_component.h