Apollo
11.0
自动驾驶开放平台
osqp_spline_1d_solver.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
21
#pragma once
22
23
#include <vector>
24
25
#include "osqp/osqp.h"
26
27
#include "
modules/common/math/qp_solver/qp_solver.h
"
28
#include "
modules/planning/planning_base/math/smoothing_spline/spline_1d_solver.h
"
29
30
namespace
apollo
{
31
namespace
planning
{
32
33
class
OsqpSpline1dSolver
:
public
Spline1dSolver
{
34
public
:
35
OsqpSpline1dSolver
(
const
std::vector<double>& x_knots,
const
uint32_t order);
36
virtual
~OsqpSpline1dSolver
();
37
38
bool
Solve
()
override
;
39
40
void
CleanUp
();
41
42
void
ResetOsqp
();
43
44
private
:
45
OSQPSettings* settings_ =
nullptr
;
46
OSQPWorkspace* work_ =
nullptr
;
// Workspace
47
OSQPData* data_ =
nullptr
;
// OSQPData
48
};
49
50
}
// namespace planning
51
}
// namespace apollo
apollo::planning::OsqpSpline1dSolver
Definition
osqp_spline_1d_solver.h:33
apollo::planning::OsqpSpline1dSolver::Solve
bool Solve() override
Definition
osqp_spline_1d_solver.cc:74
apollo::planning::OsqpSpline1dSolver::CleanUp
void CleanUp()
Definition
osqp_spline_1d_solver.cc:55
apollo::planning::OsqpSpline1dSolver::~OsqpSpline1dSolver
virtual ~OsqpSpline1dSolver()
Definition
osqp_spline_1d_solver.cc:53
apollo::planning::OsqpSpline1dSolver::ResetOsqp
void ResetOsqp()
Definition
osqp_spline_1d_solver.cc:67
apollo::planning::Spline1dSolver
Definition
spline_1d_solver.h:37
planning
Planning module main class.
apollo
class register implement
Definition
arena_queue.h:37
qp_solver.h
: quadratic programming base class
spline_1d_solver.h
modules
planning
planning_base
math
smoothing_spline
osqp_spline_1d_solver.h