mixtureBootstrapFilter.h
Go to the documentation of this file.
1 // Copyright (C) 2009 Tinne De Laet <first dot last at gmail dot com>
2 // $Id: mixtureBoostrapFilter.h 2009-02-03 tdelaet $
3 //
4 /***************************************************************************
5  * This library is free software; you can redistribute it and/or *
6  * modify it under the terms of the GNU General Public *
7  * License as published by the Free Software Foundation; *
8  * version 2 of the License. *
9  * *
10  * As a special exception, you may use this file as part of a free *
11  * software library without restriction. Specifically, if other files *
12  * instantiate templates or use macros or inline functions from this *
13  * file, or you compile this file and link it with other files to *
14  * produce an executable, this file does not by itself cause the *
15  * resulting executable to be covered by the GNU General Public *
16  * License. This exception does not however invalidate any other *
17  * reasons why the executable file might be covered by the GNU General *
18  * Public License. *
19  * *
20  * This library is distributed in the hope that it will be useful, *
21  * but WITHOUT ANY WARRANTY; without even the implied warranty of *
22  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
23  * Lesser General Public License for more details. *
24  * *
25  * You should have received a copy of the GNU General Public *
26  * License along with this library; if not, write to the Free Software *
27  * Foundation, Inc., 59 Temple Place, *
28  * Suite 330, Boston, MA 02111-1307 USA *
29  * *
30  ***************************************************************************/
31 
32 #ifndef __MIXTURE_BOOTSTRAP_FILTER__
33 #define __MIXTURE_BOOTSTRAP_FILTER__
34 
35 #include "mixtureParticleFilter.h"
36 
37 namespace BFL
38 {
39 
41 
71 template <typename StateVar, typename MeasVar> class MixtureBootstrapFilter
72  : public MixtureParticleFilter<StateVar,MeasVar>
73 {
74  protected:
76  virtual bool UpdateInternal(SystemModel<StateVar>* const sysmodel,
77  const StateVar& u,
78  MeasurementModel<MeasVar,StateVar>* const measmodel,
79  const MeasVar& z,
80  const StateVar& s);
81 
82  public:
84 
93  int resampleperiod = 0,
94  double resamplethreshold = 0,
95  int resamplescheme = DEFAULT_RS,
96  int maintainMixturePeriod = 1 );
97 
99 
109  Mixture<StateVar> * post,
110  int resampleperiod = 0,
111  double resamplethreshold = 0,
112  int resamplescheme = DEFAULT_RS,
113  int maintainMixturePeriod = 1 );
114 
116  virtual ~MixtureBootstrapFilter();
117 
118  // Default Copy constructor will do
119 
120 };
121 
123 
124 }
125 
126 #endif // __MIXTURE_BOOTSTRAP_FILTER__
MixtureBootstrapFilter(Mixture< StateVar > *prior, int resampleperiod=0, double resamplethreshold=0, int resamplescheme=DEFAULT_RS, int maintainMixturePeriod=1)
Constructor.
Virtual Class representing all Mixture particle filters.
#define DEFAULT_RS
#define MeasVar
virtual ~MixtureBootstrapFilter()
Destructor.
Particular mixture particle filter : Proposal PDF = SystemPDF.
Class representing a mixture of PDFs, the mixture can contain different.
Definition: mixture.h:48
virtual bool UpdateInternal(SystemModel< StateVar > *const sysmodel, const StateVar &u, MeasurementModel< MeasVar, StateVar > *const measmodel, const MeasVar &z, const StateVar &s)
Actual implementation of updateinternal.
#define StateVar


bfl
Author(s): Klaas Gadeyne, Wim Meeussen, Tinne Delaet and many others. See web page for a full contributor list. ROS package maintained by Wim Meeussen.
autogenerated on Mon Feb 28 2022 21:56:33