Bayes Filters Library
PFPrediction.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 PFPREDICTION_H
9 #define PFPREDICTION_H
10 
14 
15 #include <Eigen/Dense>
16 
17 #include <memory>
18 #include <string>
19 
20 namespace bfl {
21  class PFPrediction;
22 }
23 
24 
26 {
27 public:
28  virtual ~PFPrediction() noexcept = default;
29 
30  void predict(const ParticleSet& prev_particles, ParticleSet& pred_particles);
31 
32  bool skip(const std::string& what_step, const bool status);
33 
34  bool is_skipping();
35 
36  virtual StateModel& getStateModel() noexcept = 0;
37 
38 
39 protected:
40  PFPrediction() noexcept = default;
41 
42  PFPrediction(const PFPrediction& prediction) noexcept = delete;
43 
44  PFPrediction& operator=(const PFPrediction& prediction) noexcept = delete;
45 
46  PFPrediction(PFPrediction&& prediction) noexcept = default;
47 
48  PFPrediction& operator=(PFPrediction&& prediction) noexcept = default;
49 
50  virtual void predictStep(const ParticleSet& prev_particles, ParticleSet& pred_particles) = 0;
51 
52 
53 private:
54  bool skip_ = false;
55 };
56 
57 #endif /* PFPREDICTION_H */
StateModel.h
bfl
Port of boost::any for C++11 compilers.
Definition: AdditiveMeasurementModel.h:13
bfl::PFPrediction::getStateModel
virtual StateModel & getStateModel() noexcept=0
bfl::PFPrediction::PFPrediction
PFPrediction() noexcept=default
bfl::PFPrediction::is_skipping
bool is_skipping()
Definition: PFPrediction.cpp:55
bfl::PFPrediction::operator=
PFPrediction & operator=(const PFPrediction &prediction) noexcept=delete
bfl::PFPrediction
Definition: PFPrediction.h:25
bfl::PFPrediction::skip_
bool skip_
Definition: PFPrediction.h:54
bfl::StateModel
Definition: StateModel.h:22
ExogenousModel.h
bfl::PFPrediction::~PFPrediction
virtual ~PFPrediction() noexcept=default
bfl::PFPrediction::predictStep
virtual void predictStep(const ParticleSet &prev_particles, ParticleSet &pred_particles)=0
ParticleSet.h
bfl::PFPrediction::skip
bool skip(const std::string &what_step, const bool status)
Definition: PFPrediction.cpp:26
bfl::ParticleSet
Definition: ParticleSet.h:20
bfl::PFPrediction::predict
void predict(const ParticleSet &prev_particles, ParticleSet &pred_particles)
Definition: PFPrediction.cpp:17