00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00018 
00019 
00050 #ifndef __vtkDescriptiveStatistics_h
00051 #define __vtkDescriptiveStatistics_h
00052 
00053 #include "vtkUnivariateStatisticsAlgorithm.h"
00054 
00055 class vtkStringArray;
00056 class vtkTable;
00057 class vtkVariant;
00058 
00059 class VTK_INFOVIS_EXPORT vtkDescriptiveStatistics : public vtkUnivariateStatisticsAlgorithm
00060 {
00061 public:
00062   vtkTypeMacro(vtkDescriptiveStatistics, vtkUnivariateStatisticsAlgorithm);
00063   void PrintSelf(ostream& os, vtkIndent indent);
00064   static vtkDescriptiveStatistics* New();
00065 
00067 
00070   vtkSetMacro(UnbiasedVariance,int);
00071   vtkGetMacro(UnbiasedVariance,int);
00072   vtkBooleanMacro(UnbiasedVariance,int);
00074 
00076 
00079   vtkSetMacro(SignedDeviations,int);
00080   vtkGetMacro(SignedDeviations,int);
00081   vtkBooleanMacro(SignedDeviations,int);
00083 
00086   void SetNominalParameter( const char* name );
00087 
00090   void SetDeviationParameter( const char* name );
00091 
00093 
00094   virtual void Aggregate( vtkDataObjectCollection*,
00095                           vtkDataObject* );
00097 
00098 protected:
00099   vtkDescriptiveStatistics();
00100   ~vtkDescriptiveStatistics();
00101 
00103 
00105   virtual void Learn( vtkTable* inData,
00106                       vtkTable* inParameters,
00107                       vtkDataObject* outMeta );
00109 
00111   virtual void Derive( vtkDataObject* );
00112 
00114 
00115   virtual void Test( vtkTable* inData,
00116                      vtkDataObject* inMeta,
00117                      vtkDataObject* outMeta ); 
00119 
00120   int UnbiasedVariance;
00121   int SignedDeviations;
00122 
00123 
00125 
00126   virtual void SelectAssessFunctor( vtkTable* outData, 
00127                                     vtkDataObject* inMeta,
00128                                     vtkStringArray* rowNames,
00129                                     AssessFunctor*& dfunc );
00131 
00132 
00133 private:
00134   vtkDescriptiveStatistics( const vtkDescriptiveStatistics& ); 
00135   void operator = ( const vtkDescriptiveStatistics& );   
00136 };
00137 
00138 #endif