IStateEstimator.h
Go to the documentation of this file.
1 /************************************************************************
2  * Copyright (C) 2012 Eindhoven University of Technology (TU/e). *
3  * All rights reserved. *
4  ************************************************************************
5  * Redistribution and use in source and binary forms, with or without *
6  * modification, are permitted provided that the following conditions *
7  * are met: *
8  * *
9  * 1. Redistributions of source code must retain the above *
10  * copyright notice, this list of conditions and the following *
11  * disclaimer. *
12  * *
13  * 2. Redistributions in binary form must reproduce the above *
14  * copyright notice, this list of conditions and the following *
15  * disclaimer in the documentation and/or other materials *
16  * provided with the distribution. *
17  * *
18  * THIS SOFTWARE IS PROVIDED BY TU/e "AS IS" AND ANY EXPRESS OR *
19  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED *
20  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE *
21  * ARE DISCLAIMED. IN NO EVENT SHALL TU/e OR CONTRIBUTORS BE LIABLE *
22  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR *
23  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT *
24  * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; *
25  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF *
26  * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT *
27  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE *
28  * USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH *
29  * DAMAGE. *
30  * *
31  * The views and conclusions contained in the software and *
32  * documentation are those of the authors and should not be *
33  * interpreted as representing official policies, either expressed or *
34  * implied, of TU/e. *
35  ************************************************************************/
36 
37 #ifndef WM_I_STATE_ESTIMATOR_H_
38 #define WM_I_STATE_ESTIMATOR_H_
39 
40 #include "wire/core/datatypes.h"
41 #include "problib/pdfs/PDF.h"
42 
43 namespace mhf {
44 
62 
63 public:
64 
65  virtual ~IStateEstimator() {}
66 
67  virtual IStateEstimator* clone() const = 0;
68 
73  virtual void propagate(const Time& time) = 0;
74 
80  virtual void update(const pbl::PDF& z, const Time& time) = 0;
81 
85  virtual void reset() = 0;
86 
91  virtual const pbl::PDF& getValue() const = 0;
92 
93 // /**
94 // * @brief Resets the internal state of the estimator to the given PDF
95 // * @param pdf The value to which the internal state is set
96 // */
97 // virtual void setValue(const pbl::PDF& pdf) {
98 // }
99 
106  virtual bool setParameter(const std::string& param, bool b) {
107  return false;
108  }
109 
116  virtual bool setParameter(const std::string& param, double v) {
117  return false;
118  }
119 
126  virtual bool setParameter(const std::string& param, const std::string& s) {
127  return false;
128  }
129 };
130 
131 }
132 
133 #endif /* WM_I_STATE_ESTIMATOR_H_ */
virtual bool setParameter(const std::string &param, double v)
Set a real-valued parameter of this state estimator.
Base class for all state estimators used by the world model.
double Time
Definition: datatypes.h:52
virtual bool setParameter(const std::string &param, bool b)
Resets the internal state of the estimator to the given PDF.
virtual void reset()=0
Resets the internal state of the estimator to its initial value.
virtual void update(const pbl::PDF &z, const Time &time)=0
Updates the internal state based on measurement z.
TFSIMD_FORCE_INLINE const tfScalar & z() const
virtual bool setParameter(const std::string &param, const std::string &s)
Set a string parameter of this state estimator.
virtual void propagate(const Time &time)=0
Propagates the internal state to Time time.
Definition: ClassModel.h:44
virtual const pbl::PDF & getValue() const =0
Returns the current estimated state value.
virtual IStateEstimator * clone() const =0


wire_core
Author(s): Sjoerd van den Dries, Jos Elfring
autogenerated on Fri Apr 16 2021 02:32:27