Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038 #include "people_tracking_filter/sysmodel_vector.h"
00039
00040
00041 using namespace std;
00042 using namespace BFL;
00043 using namespace tf;
00044
00045
00046 static const unsigned int NUM_SYS_VECTOR_COND_ARGS = 1;
00047 static const unsigned int DIM_SYS_VECTOR = 3;
00048
00049
00050
00051 SysPdfVector::SysPdfVector(const Vector3& sigma)
00052 : ConditionalPdf<Vector3, Vector3>(DIM_SYS_VECTOR, NUM_SYS_VECTOR_COND_ARGS),
00053 noise_(Vector3(0, 0, 0), sigma)
00054 {}
00055
00056
00057
00058
00059 SysPdfVector::~SysPdfVector()
00060 {}
00061
00062
00063
00064 Probability
00065 SysPdfVector::ProbabilityGet(const Vector3& state) const
00066 {
00067 cerr << "SysPdfVector::ProbabilityGet Method not applicable" << endl;
00068 assert(0);
00069 return 0;
00070 }
00071
00072
00073 bool
00074 SysPdfVector::SampleFrom(Sample<Vector3>& one_sample, int method, void *args) const
00075 {
00076 Vector3& res = one_sample.ValueGet();
00077
00078
00079 res = this->ConditionalArgumentGet(0);
00080
00081
00082 Sample<Vector3> noise_sample;
00083 noise_.SampleFrom(noise_sample, method, args);
00084 res += noise_sample.ValueGet();
00085
00086 return true;
00087 }
00088
00089
00090 Vector3
00091 SysPdfVector::ExpectedValueGet() const
00092 {
00093 cerr << "SysPdfVector::ExpectedValueGet Method not applicable" << endl;
00094 assert(0);
00095 return Vector3();
00096
00097 }
00098
00099 SymmetricMatrix
00100 SysPdfVector::CovarianceGet() const
00101 {
00102 cerr << "SysPdfVector::CovarianceGet Method not applicable" << endl;
00103 SymmetricMatrix Covar(DIM_SYS_VECTOR);
00104 assert(0);
00105 return Covar;
00106 }
00107