PropertySet.h
Go to the documentation of this file.
1 #ifndef PROPERTY_SET_H_
2 #define PROPERTY_SET_H_
3 
4 #include "wire/core/datatypes.h"
6 
7 #include "problib/pdfs/PDF.h"
8 
9 namespace mhf {
10 
11 class Property;
12 
13 class PropertySet : public IStateEstimator {
14 public:
15 
16  static int N_PROPERTY_SET;
17 
18  PropertySet(Time timestamp = 0);
19 
20  PropertySet(const PropertySet& orig);
21 
22  virtual ~PropertySet();
23 
24  PropertySet* clone() const;
25 
26  void addProperty(const Attribute& attribute, const pbl::PDF& value);
27 
28  void addProperty(const std::string& attribute, const pbl::PDF& value);
29 
30  void addProperty(const Attribute& attribute, const IStateEstimator& estimator);
31 
32  const Property* getProperty(const Attribute& attribute) const;
33 
34  const Property* getProperty(const std::string& attribute) const;
35 
36  void propagate(const Time& time);
37 
38  void update(const pbl::PDF& z, const Time& time);
39 
40  void reset();
41 
42  const pbl::PDF& getValue() const;
43 
44  virtual double getLikelihood(const PropertySet& P) const;
45 
46  const std::map<Attribute, Property*>& getPropertyMap() const;
47 
48  Time getTimestamp() const;
49 
50  std::string toString() const;
51 
52 protected:
53 
55 
56  void addProperty(Property* property);
57 
58  Property* getProperty(const Attribute& attribute);
59 
60 private:
61 
62  std::map<Attribute, Property*> properties_;
63 
64 };
65 
66 }
67 
68 #endif /* PROPERTY_SET_H_ */
const Property * getProperty(const Attribute &attribute) const
Definition: PropertySet.cpp:75
eT value() const
Time getTimestamp() const
void update(const pbl::PDF &z, const Time &time)
Updates the internal state based on measurement z.
const std::map< Attribute, Property * > & getPropertyMap() const
std::map< Attribute, Property * > properties_
Definition: PropertySet.h:62
static int N_PROPERTY_SET
Definition: PropertySet.h:16
void addProperty(const Attribute &attribute, const pbl::PDF &value)
Definition: PropertySet.cpp:41
Base class for all state estimators used by the world model.
double Time
Definition: datatypes.h:52
PropertySet * clone() const
Definition: PropertySet.cpp:37
int Attribute
Definition: datatypes.h:49
void reset()
Resets the internal state of the estimator to its initial value.
const pbl::PDF & getValue() const
Returns the current estimated state value.
virtual double getLikelihood(const PropertySet &P) const
void propagate(const Time &time)
Propagates the internal state to Time time.
Definition: PropertySet.cpp:95
std::string toString() const
PropertySet(Time timestamp=0)
Definition: PropertySet.cpp:19
virtual ~PropertySet()
Definition: PropertySet.cpp:23
Definition: ClassModel.h:44


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