Bayes Filters Library
LinearStateModel.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2016-2019 Istituto Italiano di Tecnologia (IIT)
3  *
4  * This software may be modified and distributed under the terms of the
5  * BSD 3-Clause license. See the accompanying LICENSE file for details.
6  */
7 
8 #ifndef LINEARSTATEMODEL_H
9 #define LINEARSTATEMODEL_H
10 
12 
13 namespace bfl {
14  class LinearStateModel;
15 }
16 
17 
19 {
20 public:
21  virtual ~LinearStateModel() noexcept = default;
22 
23  virtual void propagate(const Eigen::Ref<const Eigen::MatrixXd>& cur_states, Eigen::Ref<Eigen::MatrixXd> prop_states) override;
24 
25  virtual Eigen::MatrixXd getStateTransitionMatrix() = 0;
26 
27 
28 protected:
29  LinearStateModel() noexcept = default;
30 
31  LinearStateModel(const LinearStateModel& state_model) noexcept = delete;
32 
33  LinearStateModel& operator=(const LinearStateModel& state_model) noexcept = delete;
34 
35  LinearStateModel(LinearStateModel&& state_model) noexcept = default;
36 
37  LinearStateModel& operator=(LinearStateModel&& state_model) noexcept = default;
38 };
39 
40 #endif /* LINEARSTATEMODEL_H */
bfl
Port of boost::any for C++11 compilers.
Definition: AdditiveMeasurementModel.h:13
AdditiveStateModel.h
bfl::LinearStateModel::operator=
LinearStateModel & operator=(const LinearStateModel &state_model) noexcept=delete
bfl::LinearStateModel::~LinearStateModel
virtual ~LinearStateModel() noexcept=default
bfl::LinearStateModel::getStateTransitionMatrix
virtual Eigen::MatrixXd getStateTransitionMatrix()=0
bfl::AdditiveStateModel
Definition: AdditiveStateModel.h:19
bfl::LinearStateModel::propagate
virtual void propagate(const Eigen::Ref< const Eigen::MatrixXd > &cur_states, Eigen::Ref< Eigen::MatrixXd > prop_states) override
Definition: LinearStateModel.cpp:16
bfl::LinearStateModel
Definition: LinearStateModel.h:18
bfl::LinearStateModel::LinearStateModel
LinearStateModel() noexcept=default