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
00039 #include "srs_people_tracking_filter/sysmodel_vector.h"
00040
00041
00042 using namespace std;
00043 using namespace BFL;
00044 using namespace tf;
00045
00046
00047 static const unsigned int NUM_SYS_VECTOR_COND_ARGS = 1;
00048 static const unsigned int DIM_SYS_VECTOR = 3;
00049
00050
00051
00052 SysPdfVector::SysPdfVector(const Vector3& sigma)
00053 : ConditionalPdf<Vector3, Vector3>(DIM_SYS_VECTOR, NUM_SYS_VECTOR_COND_ARGS),
00054 noise_(Vector3(0,0,0), sigma)
00055 {}
00056
00057
00058
00059
00060 SysPdfVector::~SysPdfVector()
00061 {}
00062
00063
00064
00065 Probability
00066 SysPdfVector::ProbabilityGet(const Vector3& state) const
00067 {
00068 cerr << "SysPdfVector::ProbabilityGet Method not applicable" << endl;
00069 assert(0);
00070 return 0;
00071 }
00072
00073
00074 bool
00075 SysPdfVector::SampleFrom (Sample<Vector3>& one_sample, int method, void *args) const
00076 {
00077 Vector3& res = one_sample.ValueGet();
00078
00079
00080 res = this->ConditionalArgumentGet(0);
00081
00082
00083 Sample<Vector3> noise_sample;
00084 noise_.SampleFrom(noise_sample, method, args);
00085 res += noise_sample.ValueGet();
00086
00087 return true;
00088 }
00089
00090
00091 Vector3
00092 SysPdfVector::ExpectedValueGet() const
00093 {
00094 cerr << "SysPdfVector::ExpectedValueGet Method not applicable" << endl;
00095 assert(0);
00096 return Vector3();
00097
00098 }
00099
00100 SymmetricMatrix
00101 SysPdfVector::CovarianceGet() const
00102 {
00103 cerr << "SysPdfVector::CovarianceGet Method not applicable" << endl;
00104 SymmetricMatrix Covar(DIM_SYS_VECTOR);
00105 assert(0);
00106 return Covar;
00107 }
00108