Contains all classes and functions related to Kalman filtering. More...
Namespaces | |
namespace | Util |
Nested namespace in | |
Classes | |
class | EKFilter |
Generic Extended Kalman Filter (EKF) template base class. More... | |
struct | KalmanError |
Base class for all exceptions thrown in the Kalman namespace. More... | |
class | KFilter |
Generic Linear Kalman Filter template base class. More... | |
class | KMatrix |
Minimalist matrix template class. More... | |
class | KMatrixContextImpl |
Contains necessary informations to print a formatted KMatrix . More... | |
class | KVector |
Minimalist vector template class. More... | |
class | KVectorContextImpl |
Contains necessary informations to print a formatted KVector . More... | |
class | MFile |
struct | MFileElement |
struct | OutOfBoundError |
Exception class for access to out-of-bound elements. More... | |
Typedefs | |
typedef short int | K_INT_16 |
Signed 16-bits integral type. | |
typedef long int | K_INT_32 |
Signed 32-bits integral type. | |
typedef float | K_REAL_32 |
32-bits floating point type | |
typedef double | K_REAL_64 |
64-bits floating point type | |
typedef unsigned short int | K_UINT_16 |
Unsigned 16-bits integral type. | |
typedef unsigned long int | K_UINT_32 |
Unsigned 32-bits integral type. | |
typedef unsigned short | KMatrixContext |
Handle type to a matrix printing context. | |
typedef unsigned short | KVectorContext |
Handle type to a vector printing context. | |
Functions | |
KMatrixContext | createKMatrixContext (std::string elemDelim=" ", std::string rowDelim="\n", std::string startDelim="", std::string endDelim="", unsigned prec=4) |
Creates a matrix printing context. | |
KVectorContext | createKVectorContext (std::string elemDelim=" ", std::string startDelim="", std::string endDelim="", unsigned prec=4) |
Creates a vector printing context. | |
template<typename T , K_UINT_32 BEG, bool DBG> | |
std::ostream & | operator<< (std::ostream &os, const KVector< T, BEG, DBG > &v) |
Writes a vector to a stream. | |
template<typename T , K_UINT_32 BEG, bool DBG> | |
std::ostream & | operator<< (std::ostream &os, const KMatrix< T, BEG, DBG > &M) |
Writes a matrix to a stream. | |
template<typename T , K_UINT_32 BEG, bool DBG> | |
std::istream & | operator>> (std::istream &is, KVector< T, BEG, DBG > &v) |
Reads a vector from a stream. | |
template<typename T , K_UINT_32 BEG, bool DBG> | |
std::istream & | operator>> (std::istream &is, KMatrix< T, BEG, DBG > &M) |
Reads a matrix from a stream. | |
KMatrixContext | selectKMatrixContext (KMatrixContext c) |
Selects a matrix printing context as the current context. | |
KVectorContext | selectKVectorContext (KVectorContext c) |
Selects a vector printing context as the current context. | |
Variables | |
KMatrixContextImpl * | currentMatrixContext = &matrixContexts[0] |
Refers to the currently selected matrix printing context. | |
KVectorContextImpl * | currentVectorContext = &vectorContexts[0] |
Refers to the currently selected vector printing context. | |
KMatrixContext | DEFAULT_MATRIX_CONTEXT = 0 |
Default matrix printing context object. | |
KVectorContext | DEFAULT_VECTOR_CONTEXT = 0 |
Default vector printing context object. |
Contains all classes and functions related to Kalman filtering.
The Kalman filtering template classes make use of traditional vector and matrix template classes. Since Kalman filtering is mainly used in numeric applications, the presence of another library of vectors and matrices is probable. To avoid name clashes, the Kalman
namespace contains everything.
typedef short int Kalman::K_INT_16 |
Signed 16-bits integral type.
Definition at line 65 of file ktypes.hpp.
typedef long int Kalman::K_INT_32 |
Signed 32-bits integral type.
Definition at line 67 of file ktypes.hpp.
typedef float Kalman::K_REAL_32 |
32-bits floating point type
Definition at line 69 of file ktypes.hpp.
typedef double Kalman::K_REAL_64 |
64-bits floating point type
Definition at line 70 of file ktypes.hpp.
typedef unsigned short int Kalman::K_UINT_16 |
Unsigned 16-bits integral type.
Definition at line 66 of file ktypes.hpp.
typedef unsigned long int Kalman::K_UINT_32 |
Unsigned 32-bits integral type.
Definition at line 68 of file ktypes.hpp.
typedef unsigned short Kalman::KMatrixContext |
Handle type to a matrix printing context.
Definition at line 179 of file kmatrix.hpp.
typedef unsigned short Kalman::KVectorContext |
Handle type to a vector printing context.
Definition at line 166 of file kvector.hpp.
KMatrixContext Kalman::createKMatrixContext | ( | std::string | elemDelim = " " , |
|
std::string | rowDelim = "\n" , |
|||
std::string | startDelim = "" , |
|||
std::string | endDelim = "" , |
|||
unsigned | prec = 4 | |||
) |
Creates a matrix printing context.
This function creates a new matrix printing context and adds it to the global list of matrix contexts. In the discussion below, a whitespace refers to a single character among the following : a horizontal space, a horizontal tabulation, a linefeed or a carriage return.
elemDelim | Delimiter string between matrix elements. Must not be empty. Must start and end with one or more whitespace(s). Cannot contain a middle whitespace (a lone whitespace which is not at the beginning, nor at the end of the string). | |
rowDelim | Delimiter string at the end of each row. Must not be empty. Must start and end with one or more whitespace(s). Cannot contain a middle whitespace (a lone whitespace which is not at the beginning, nor at the end of the string). | |
startDelim | Starting string before first matrix element. May be empty. If not empty, must not begin with a whitespace and must end with one or more whitespace(s). Cannot contain a middle whitespace. | |
endDelim | Ending string after last matrix element. May be empty. If not empty, must not end with a whitespace and must begin with one or more whitespace(s). Cannot contain a middle whitespace | |
prec | Number of significant digits to output. Must be between 1 and 9, or else, will be clipped. |
Definition at line 144 of file kstatics.cpp.
KVectorContext Kalman::createKVectorContext | ( | std::string | elemDelim = " " , |
|
std::string | startDelim = "" , |
|||
std::string | endDelim = "" , |
|||
unsigned | prec = 4 | |||
) |
Creates a vector printing context.
This function creates a new vector printing context and adds it to the global list of vector contexts. In the discussion below, a whitespace refers to a single character among the following : a horizontal space, a horizontal tabulation, a linefeed or a carriage return.
elemDelim | Delimiter string between vector elements. Must not be empty. Must start and end with one or more whitespace(s). Cannot contain a middle whitespace (a lone whitespace which is not at the beginning, nor at the end of the string). | |
startDelim | Starting string before first vector element. May be empty. If not empty, must not begin with a whitespace and must end with one or more whitespace(s). Cannot contain a middle whitespace. | |
endDelim | Ending string after last vector element. May be empty. If not empty, must not end with a whitespace and must begin with one or more whitespace(s). Cannot contain a middle whitespace | |
prec | Number of significant digits to output. Must be between 1 and 9, or else, will be clipped. |
Definition at line 85 of file kstatics.cpp.
std::ostream & Kalman::operator<< | ( | std::ostream & | os, | |
const KVector< T, BEG, DBG > & | v | |||
) | [inline] |
Writes a vector to a stream.
os | A reference to the output stream. | |
v | A reference to the vector to print. |
v.put(os)
. Definition at line 328 of file kvector_impl.hpp.
std::ostream & Kalman::operator<< | ( | std::ostream & | os, | |
const KMatrix< T, BEG, DBG > & | M | |||
) | [inline] |
Writes a matrix to a stream.
os | A reference to the output stream. | |
M | A reference to the matrix to print. |
M.put(os)
. Definition at line 474 of file kmatrix_impl.hpp.
std::istream & Kalman::operator>> | ( | std::istream & | is, | |
KVector< T, BEG, DBG > & | v | |||
) | [inline] |
Reads a vector from a stream.
is | A reference to the input stream. | |
v | A reference to the vector to read. |
v.get(is)
. Definition at line 317 of file kvector_impl.hpp.
std::istream & Kalman::operator>> | ( | std::istream & | is, | |
KMatrix< T, BEG, DBG > & | M | |||
) | [inline] |
Reads a matrix from a stream.
is | A reference to the input stream. | |
M | A reference to the matrix to read. |
M.get(is)
. Definition at line 463 of file kmatrix_impl.hpp.
KMatrixContext Kalman::selectKMatrixContext | ( | KMatrixContext | c | ) |
Selects a matrix printing context as the current context.
c | Handle to the new context to select. |
c
exists, then nothing will happen. Definition at line 164 of file kstatics.cpp.
KVectorContext Kalman::selectKVectorContext | ( | KVectorContext | c | ) |
Selects a vector printing context as the current context.
c | Handle to the new context to select. |
c
exists, then nothing will happen. Definition at line 103 of file kstatics.cpp.
KMatrixContextImpl * Kalman::currentMatrixContext = &matrixContexts[0] |
Refers to the currently selected matrix printing context.
Global pointer to the currently selected matrix printing context. Never 0.
selectKMatrixContext()
instead. Definition at line 116 of file kstatics.cpp.
KVectorContextImpl * Kalman::currentVectorContext = &vectorContexts[0] |
Refers to the currently selected vector printing context.
Global pointer to the currently selected vector printing context. Never 0.
selectKVectorContext()
instead. Definition at line 61 of file kstatics.cpp.
Default matrix printing context object.
Global index of the default matrix printing context.
Definition at line 119 of file kstatics.cpp.
Default vector printing context object.
Global index of the default vector printing context.
Definition at line 64 of file kstatics.cpp.