include
mpc_local_planner
optimal_control
finite_differences_grid_se2.h
Go to the documentation of this file.
1
/*********************************************************************
2
*
3
* Software License Agreement
4
*
5
* Copyright (c) 2020, Christoph Rösmann, All rights reserved.
6
*
7
* This program is free software: you can redistribute it and/or modify
8
* it under the terms of the GNU General Public License as published by
9
* the Free Software Foundation, either version 3 of the License, or
10
* (at your option) any later version.
11
*
12
* This program is distributed in the hope that it will be useful,
13
* but WITHOUT ANY WARRANTY; without even the implied warranty of
14
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15
* GNU General Public License for more details.
16
*
17
* You should have received a copy of the GNU General Public License
18
* along with this program. If not, see <https://www.gnu.org/licenses/>.
19
*
20
* Authors: Christoph Rösmann
21
*********************************************************************/
22
23
#ifndef FINITE_DIFFERENCES_GRID_H_
24
#define FINITE_DIFFERENCES_GRID_H_
25
26
#include <
mpc_local_planner/optimal_control/full_discretization_grid_base_se2.h
>
27
28
#include <memory>
29
30
namespace
mpc_local_planner
{
31
43
class
FiniteDifferencesGridSE2 :
public
FullDiscretizationGridBaseSE2
44
{
45
public
:
46
using
Ptr
= std::shared_ptr<FiniteDifferencesGridSE2>;
47
48
using
BaseEdge
=
corbo::BaseEdge
;
49
using
BaseMixedEdge
=
corbo::BaseMixedEdge
;
50
52
FiniteDifferencesGridSE2
() =
default
;
54
virtual
~FiniteDifferencesGridSE2
() =
default
;
55
57
corbo::DiscretizationGridInterface::Ptr
getInstance
()
const override
{
return
std::make_shared<FiniteDifferencesGridSE2>(); }
58
60
static
corbo::Factory<corbo::DiscretizationGridInterface>
&
getFactory
() {
return
corbo::Factory<corbo::DiscretizationGridInterface>::instance
(); }
61
62
protected
:
63
void
createEdges
(
NlpFunctions
& nlp_fun,
OptimizationEdgeSet
& edges,
SystemDynamicsInterface::Ptr
dynamics)
override
;
64
65
bool
isDtFixedIntended
()
const override
{
return
true
; }
66
};
67
68
}
// namespace mpc_local_planner
69
70
#endif // FINITE_DIFFERENCES_GRID_H_
corbo::BaseEdge
mpc_local_planner::FiniteDifferencesGridSE2::FiniteDifferencesGridSE2
FiniteDifferencesGridSE2()=default
Default constructor.
corbo::Factory
corbo::NlpFunctions
mpc_local_planner::FiniteDifferencesGridSE2::Ptr
std::shared_ptr< FiniteDifferencesGridSE2 > Ptr
Definition:
finite_differences_grid_se2.h:86
mpc_local_planner
Definition:
controller.h:44
corbo::BaseMixedEdge
corbo::DiscretizationGridInterface::Ptr
std::shared_ptr< DiscretizationGridInterface > Ptr
corbo::Factory::instance
static Factory & instance()
mpc_local_planner::FiniteDifferencesGridSE2::getFactory
static corbo::Factory< corbo::DiscretizationGridInterface > & getFactory()
Get access to the associated factory.
Definition:
finite_differences_grid_se2.h:100
mpc_local_planner::FiniteDifferencesGridSE2::createEdges
void createEdges(NlpFunctions &nlp_fun, OptimizationEdgeSet &edges, SystemDynamicsInterface::Ptr dynamics) override
Definition:
finite_differences_grid_se2.cpp:56
mpc_local_planner::FiniteDifferencesGridSE2::BaseMixedEdge
corbo::BaseMixedEdge BaseMixedEdge
Definition:
finite_differences_grid_se2.h:89
corbo::OptimizationEdgeSet
corbo::SystemDynamicsInterface::Ptr
std::shared_ptr< SystemDynamicsInterface > Ptr
mpc_local_planner::FiniteDifferencesGridSE2::getInstance
corbo::DiscretizationGridInterface::Ptr getInstance() const override
Return a newly created shared instance of the implemented class.
Definition:
finite_differences_grid_se2.h:97
full_discretization_grid_base_se2.h
mpc_local_planner::FiniteDifferencesGridSE2::~FiniteDifferencesGridSE2
virtual ~FiniteDifferencesGridSE2()=default
Default destructor.
mpc_local_planner::FiniteDifferencesGridSE2::BaseEdge
corbo::BaseEdge BaseEdge
Definition:
finite_differences_grid_se2.h:88
mpc_local_planner::FiniteDifferencesGridSE2::isDtFixedIntended
bool isDtFixedIntended() const override
Definition:
finite_differences_grid_se2.h:105
mpc_local_planner
Author(s): Christoph Rösmann
autogenerated on Wed Mar 2 2022 00:35:06