The Machine Perception Toolbox

[Introduction]- [News]- [Download]- [Screenshots]- [Manual (pdf)]- [Forums]- [API Reference]- [Repository ]

 

Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

ModeData Class Reference

#include <cluster.h>

List of all members.

Public Member Functions

int addData (ActData data)
double getMax ()
double getMean ()
double getMin ()
int getSize ()
double getVarience ()
 ModeData (const ModeData &_data)
 ModeData (std::vector< ActData > data, int _mode)
 ModeData ()
void printData (ofstream &os)
void setVarience ()
int subData (ActData data)
 ~ModeData ()

Private Attributes

std::vector< double > List
float m_max
float m_min
double mean
double meanSquare
int mode
std::vector< double > squareList
double varience


Constructor & Destructor Documentation

ModeData  )  [inline]
 

Definition at line 34 of file cluster.h.

00034                    {
00035                 mode = -1;
00036                 mean = 0;
00037                 varience = 0;
00038                 meanSquare = 0;
00039                 m_max = -5000.0;
00040                 m_min = 5000.0;
00041         };

ModeData std::vector< ActData data,
int  _mode
[inline]
 

Definition at line 42 of file cluster.h.

References data, i, max, and min().

00042                                                        {
00043                 mode = _mode;
00044                 m_max = -5000.0;
00045                 m_min = 5000.0;
00046                 int dataSize = data.size();
00047                 for (int i = 0; i < dataSize; i++) {
00048                         if (data[i].mode == mode) {
00049                                 double val = data[i].val;
00050                                 mean += val;
00051                                 meanSquare += val*val;
00052                                 squareList.push_back(val*val);
00053                                 List.push_back(val);
00054                                 m_max = max(m_max, val);
00055                                 m_min = min(m_min, val);
00056                         }
00057                 }
00058                 mean /= List.size();
00059                 meanSquare /= squareList.size();
00060                 setVarience();
00061         };

Here is the call graph for this function:

ModeData const ModeData _data  )  [inline]
 

Definition at line 63 of file cluster.h.

References List, m_max, m_min, mean, meanSquare, mode, squareList, and varience.

00063                                         {
00064                 mode = _data.mode;
00065                 mean = _data.mean;
00066                 m_max = _data.m_max;
00067                 m_min = _data.m_min;
00068                 meanSquare = _data.meanSquare;
00069                 varience = _data.varience;
00070                 List = _data.List;
00071                 squareList = _data.squareList;
00072         };

~ModeData  )  [inline]
 

Definition at line 76 of file cluster.h.

00076 {squareList.clear(); List.clear();};


Member Function Documentation

int addData ActData  data  )  [inline]
 

Definition at line 87 of file cluster.h.

References data, max, min(), ActData::mode, and ActData::val.

00087                                          { 
00088                 if (mode == data.mode) {
00089                         double SquareListVal = meanSquare*squareList.size();
00090                         double ListVal = mean*List.size();
00091                         squareList.push_back(data.val*data.val);
00092                         List.push_back(data.val);
00093                         meanSquare = (SquareListVal + (data.val*data.val))/squareList.size();
00094                         mean = (ListVal + data.val)/List.size();
00095                         setVarience();
00096                         m_max = max(m_max, data.val);
00097                         m_min = min(m_min, data.val);
00098                         return 1;
00099                 }
00100                 return 0;
00101         };

Here is the call graph for this function:

double getMax  )  [inline]
 

Definition at line 80 of file cluster.h.

00080 {return m_max;};

double getMean  )  [inline]
 

Definition at line 78 of file cluster.h.

00078 {return mean;};

double getMin  )  [inline]
 

Definition at line 79 of file cluster.h.

00079 {return m_min;};

int getSize  )  [inline]
 

Definition at line 83 of file cluster.h.

00083 { return List.size(); };

double getVarience  )  [inline]
 

Definition at line 81 of file cluster.h.

00081 { return varience; };

void printData ofstream &  os  )  [inline]
 

Definition at line 137 of file cluster.h.

References i.

00138         {
00139                 os << "mode = " << mode << endl;
00140                 for(int i = 0; i < List.size(); i++) {
00141                         os << List[i] << "\t";
00142                 }
00143                 os << endl << endl;
00144 
00145         }

void setVarience  )  [inline]
 

Definition at line 82 of file cluster.h.

00082 { varience = meanSquare - (mean*mean); };

int subData ActData  data  )  [inline]
 

Definition at line 105 of file cluster.h.

References data, max, min(), ActData::mode, and ActData::val.

00105                                          {
00106                 if(data.mode == mode) {
00107                         double val = data.val;
00108                         double squareVal = data.val*data.val;
00109                         double squareListVal = meanSquare * squareList.size();
00110                         double ListVal = mean*List.size();
00111                         std::vector<double>::iterator it = List.begin();
00112                         for (; it != List.end(); ++it) {
00113                                 if(*it == val) {
00114                                         List.erase(it);
00115                                         break;
00116                                 }
00117                         }
00118                         it = squareList.begin();
00119                         for (; it != List.end(); ++it) {
00120                                 if(*it == squareVal) {
00121                                         squareList.erase(it);
00122                                         break;
00123                                 }
00124                         }
00125                         meanSquare = (squareListVal - squareVal)/squareList.size();
00126                         mean = (ListVal - val)/List.size();
00127                         setVarience();
00128                         m_max = max(m_max, data.val);
00129                         m_min = min(m_min, data.val);
00130                         return 1;
00131                 }
00132                 return 0;
00133         };

Here is the call graph for this function:


Member Data Documentation

std::vector< double > List [private]
 

Definition at line 28 of file cluster.h.

Referenced by ModeData().

float m_max [private]
 

Definition at line 30 of file cluster.h.

Referenced by ModeData().

float m_min [private]
 

Definition at line 31 of file cluster.h.

Referenced by ModeData().

double mean [private]
 

Definition at line 25 of file cluster.h.

Referenced by ModeData().

double meanSquare [private]
 

Definition at line 27 of file cluster.h.

Referenced by ModeData().

int mode [private]
 

Definition at line 24 of file cluster.h.

Referenced by ModeData().

std::vector< double > squareList [private]
 

Definition at line 29 of file cluster.h.

Referenced by ModeData().

double varience [private]
 

Definition at line 26 of file cluster.h.

Referenced by ModeData().


The documentation for this class was generated from the following file:
Generated on Mon Nov 8 17:08:32 2004 for MPT by  doxygen 1.3.9.1