VTK
dox/Infovis/vtkDescriptiveStatistics.h
Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003 Program:   Visualization Toolkit
00004 Module:    vtkDescriptiveStatistics.h
00005 
00006 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
00007 All rights reserved.
00008 See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
00009 
00010 This software is distributed WITHOUT ANY WARRANTY; without even
00011 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
00012 PURPOSE.  See the above copyright notice for more information.
00013 
00014 =========================================================================*/
00015 /*-------------------------------------------------------------------------
00016   Copyright 2010 Sandia Corporation.
00017   Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation,
00018   the U.S. Government retains certain rights in this software.
00019   -------------------------------------------------------------------------*/
00054 #ifndef __vtkDescriptiveStatistics_h
00055 #define __vtkDescriptiveStatistics_h
00056 
00057 #include "vtkStatisticsAlgorithm.h"
00058 
00059 class vtkMultiBlockDataSet;
00060 class vtkStringArray;
00061 class vtkTable;
00062 class vtkVariant;
00063 
00064 class VTK_INFOVIS_EXPORT vtkDescriptiveStatistics : public vtkStatisticsAlgorithm
00065 {
00066 public:
00067   vtkTypeMacro(vtkDescriptiveStatistics, vtkStatisticsAlgorithm);
00068   void PrintSelf(ostream& os, vtkIndent indent);
00069   static vtkDescriptiveStatistics* New();
00070 
00072 
00075   vtkSetMacro(UnbiasedVariance,int);
00076   vtkGetMacro(UnbiasedVariance,int);
00077   vtkBooleanMacro(UnbiasedVariance,int);
00079 
00081 
00084   vtkSetMacro(G1Skewness,int);
00085   vtkGetMacro(G1Skewness,int);
00086   vtkBooleanMacro(G1Skewness,int);
00088 
00090 
00093   vtkSetMacro(G2Kurtosis,int);
00094   vtkGetMacro(G2Kurtosis,int);
00095   vtkBooleanMacro(G2Kurtosis,int);
00097 
00099 
00102   vtkSetMacro(SignedDeviations,int);
00103   vtkGetMacro(SignedDeviations,int);
00104   vtkBooleanMacro(SignedDeviations,int);
00106 
00108 
00109   virtual void Aggregate( vtkDataObjectCollection*,
00110                           vtkMultiBlockDataSet* );
00112 
00113 protected:
00114   vtkDescriptiveStatistics();
00115   ~vtkDescriptiveStatistics();
00116 
00118 
00120   virtual void Learn( vtkTable*,
00121                       vtkTable*,
00122                       vtkMultiBlockDataSet* );
00124 
00126   virtual void Derive( vtkMultiBlockDataSet* );
00127 
00129 
00130   virtual void Test( vtkTable*,
00131                      vtkMultiBlockDataSet*,
00132                      vtkTable* ); 
00134 
00136 
00137   virtual void Assess( vtkTable* inData,
00138                        vtkMultiBlockDataSet* inMeta,
00139                        vtkTable* outData ) 
00140   { this->Superclass::Assess( inData, inMeta, outData, 1 ); }
00142 
00143 //BTX  
00145 
00146   virtual void SelectAssessFunctor( vtkTable* outData, 
00147                                     vtkDataObject* inMeta,
00148                                     vtkStringArray* rowNames,
00149                                     AssessFunctor*& dfunc );
00150 //ETX
00152 
00153   int UnbiasedVariance;
00154   int G1Skewness;
00155   int G2Kurtosis;
00156   int SignedDeviations;
00157 
00158 private:
00159   vtkDescriptiveStatistics( const vtkDescriptiveStatistics& ); // Not implemented
00160   void operator = ( const vtkDescriptiveStatistics& );   // Not implemented
00161 };
00162 
00163 #endif