Apollo 10.0
自动驾驶开放平台
routing.h
浏览该文件的文档.
1/******************************************************************************
2 * Copyright 2017 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 "modules/routing/proto/routing_config.pb.h"
24
29
30namespace apollo {
31namespace routing {
32
33class Routing {
34 // friend class RoutingTestBase;
35 public:
36 Routing();
37
41 std::string Name() const;
42
48
54
58 virtual ~Routing() = default;
59
60 bool Process(
61 const std::shared_ptr<routing::RoutingRequest> &routing_request,
62 routing::RoutingResponse *const routing_response);
63
64 private:
65 std::vector<routing::RoutingRequest> FillLaneInfoIfMissing(
66 const routing::RoutingRequest &routing_request);
67
68 private:
69 std::unique_ptr<Navigator> navigator_ptr_;
70 common::monitor::MonitorLogBuffer monitor_logger_buffer_;
71
72 const hdmap::HDMap *hdmap_ = nullptr;
73};
74
75} // namespace routing
76} // namespace apollo
A general class to denote the return status of an API call.
Definition status.h:43
High-precision map loader interface.
Definition hdmap.h:54
bool Process(const std::shared_ptr< routing::RoutingRequest > &routing_request, routing::RoutingResponse *const routing_response)
Definition routing.cc:129
std::string Name() const
module name
Definition routing.cc:32
virtual ~Routing()=default
destructor
apollo::common::Status Init()
module initialization function
Definition routing.cc:37
apollo::common::Status Start()
module start function
Definition routing.cc:48
The class of MonitorLogBuffer
class register implement
Definition arena_queue.h:37