src
smoother
backwardfilter.h
Go to the documentation of this file.
1
// $Id: backwardfilter.h 6736 2006-12-21 11:24:42Z tdelaet $
2
// Copyright (C) 2006 Tinne De Laet <first dot last at mech dot kuleuven dot be>
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 __BACKWARDFILTER__
33
#define __BACKWARDFILTER__
34
35
#include "../model/systemmodel.h"
36
#include "../pdf/pdf.h"
37
38
namespace
BFL
39
{
40
using namespace
std
;
41
43
59
template
<
typename
StateVar>
class
BackwardFilter
60
{
61
protected
:
62
64
Pdf<StateVar>
*
_prior
;
65
67
69
Pdf<StateVar>
*
_post
;
70
72
int
_timestep
;
73
75
79
virtual
bool
UpdateInternal(
SystemModel<StateVar>
*
const
sysmodel,
80
const
StateVar
& u,
81
Pdf<StateVar>
*
const
filtered_post)=0;
82
83
public
:
85
88
BackwardFilter
(
Pdf<StateVar>
* prior);
89
91
BackwardFilter
(
const
BackwardFilter<StateVar>
& filt);
92
94
virtual
~
BackwardFilter
();
95
97
virtual
void
Reset(
Pdf<StateVar>
* prior);
98
100
104
virtual
bool
Update(
SystemModel<StateVar>
*
const
sysmodel,
105
const
StateVar
& u,
106
Pdf<StateVar>
*
const
filtered_post);
107
109
113
virtual
bool
Update(
SystemModel<StateVar>
*
const
sysmodel,
114
Pdf<StateVar>
*
const
filtered_post);
115
117
120
virtual
Pdf<StateVar>
* PostGet();
121
123
126
int
TimeStepGet()
const
;
127
};
128
129
// For template instantiation
130
#include "
backwardfilter.cpp
"
131
132
}
// End namespace BFL
133
134
#endif // __BACKWARDFILTER__
BFL::Pdf
Class PDF: Virtual Base class representing Probability Density Functions.
Definition:
pdf.h:53
BFL::BackwardFilter::_timestep
int _timestep
Represents the current timestep of the filter.
Definition:
backwardfilter.h:72
std
BFL::BackwardFilter
Virtual Baseclass representing all bayesian backward filters.
Definition:
backwardfilter.h:59
BFL
Definition:
compare_filters/nonlinearanalyticconditionalgaussianmobile.cpp:24
StateVar
#define StateVar
BFL::BackwardFilter::_prior
Pdf< StateVar > * _prior
prior Pdf
Definition:
backwardfilter.h:64
BFL::BackwardFilter::_post
Pdf< StateVar > * _post
Pointer to the Posterior Pdf.
Definition:
backwardfilter.h:69
BFL::SystemModel
Definition:
systemmodel.h:48
backwardfilter.cpp
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