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 
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;
50 
52  FiniteDifferencesGridSE2() = default;
54  virtual ~FiniteDifferencesGridSE2() = default;
55 
57  corbo::DiscretizationGridInterface::Ptr getInstance() const override { return std::make_shared<FiniteDifferencesGridSE2>(); }
58 
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