Apollo
10.0
自动驾驶开放平台
external_command_process_component.h
浏览该文件的文档.
1
/******************************************************************************
2
* Copyright 2023 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
#include <vector>
25
26
#include "modules/common_msgs/external_command_msgs/command_status.pb.h"
27
#include "
cyber/component/component.h
"
28
33
namespace
apollo
{
34
namespace
external_command {
35
36
class
CommandProcessorBase;
37
43
class
ExternalCommandProcessComponent
:
public
cyber::Component
<> {
44
public
:
45
ExternalCommandProcessComponent
() =
default
;
46
47
~ExternalCommandProcessComponent
() =
default
;
48
49
bool
Init
()
override
;
50
51
private
:
52
std::vector<std::shared_ptr<CommandProcessorBase>> command_processors_;
53
std::shared_ptr<cyber::Service<CommandStatusRequest, CommandStatus>>
54
command_status_service_;
55
};
56
57
CYBER_REGISTER_COMPONENT
(
ExternalCommandProcessComponent
)
58
59
}
// namespace external_command
60
}
// namespace apollo
apollo::cyber::Component
Definition
component.h:60
apollo::external_command::ExternalCommandProcessComponent
The external interface for processing external commands.
Definition
external_command_process_component.h:43
apollo::external_command::ExternalCommandProcessComponent::ExternalCommandProcessComponent
ExternalCommandProcessComponent()=default
apollo::external_command::ExternalCommandProcessComponent::Init
bool Init() override
Definition
external_command_process_component.cc:34
apollo::external_command::ExternalCommandProcessComponent::~ExternalCommandProcessComponent
~ExternalCommandProcessComponent()=default
component.h
CYBER_REGISTER_COMPONENT
#define CYBER_REGISTER_COMPONENT(name)
Definition
component.h:656
apollo
class register implement
Definition
arena_queue.h:37
modules
external_command
process_component
external_command_process_component.h