VTK
|
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 "vtkFiltersStatisticsModule.h" // For export macro 00058 #include "vtkStatisticsAlgorithm.h" 00059 00060 class vtkMultiBlockDataSet; 00061 class vtkStringArray; 00062 class vtkTable; 00063 class vtkVariant; 00064 class vtkDoubleArray; 00065 00066 class VTKFILTERSSTATISTICS_EXPORT vtkDescriptiveStatistics : public vtkStatisticsAlgorithm 00067 { 00068 public: 00069 vtkTypeMacro(vtkDescriptiveStatistics, vtkStatisticsAlgorithm); 00070 void PrintSelf(ostream& os, vtkIndent indent); 00071 static vtkDescriptiveStatistics* New(); 00072 00074 00077 vtkSetMacro(UnbiasedVariance,int); 00078 vtkGetMacro(UnbiasedVariance,int); 00079 vtkBooleanMacro(UnbiasedVariance,int); 00081 00083 00086 vtkSetMacro(G1Skewness,int); 00087 vtkGetMacro(G1Skewness,int); 00088 vtkBooleanMacro(G1Skewness,int); 00090 00092 00095 vtkSetMacro(G2Kurtosis,int); 00096 vtkGetMacro(G2Kurtosis,int); 00097 vtkBooleanMacro(G2Kurtosis,int); 00099 00101 00104 vtkSetMacro(SignedDeviations,int); 00105 vtkGetMacro(SignedDeviations,int); 00106 vtkBooleanMacro(SignedDeviations,int); 00108 00110 00111 virtual void Aggregate( vtkDataObjectCollection*, 00112 vtkMultiBlockDataSet* ); 00114 00115 protected: 00116 vtkDescriptiveStatistics(); 00117 ~vtkDescriptiveStatistics(); 00118 00120 00122 virtual void Learn( vtkTable*, 00123 vtkTable*, 00124 vtkMultiBlockDataSet* ); 00126 00128 virtual void Derive( vtkMultiBlockDataSet* ); 00129 00131 00132 virtual void Test( vtkTable*, 00133 vtkMultiBlockDataSet*, 00134 vtkTable* ); 00136 00138 00139 virtual void Assess( vtkTable* inData, 00140 vtkMultiBlockDataSet* inMeta, 00141 vtkTable* outData ) 00142 { this->Superclass::Assess( inData, inMeta, outData, 1 ); } 00144 00145 //BTX 00148 virtual vtkDoubleArray* CalculatePValues(vtkDoubleArray*); 00149 00151 00152 virtual void SelectAssessFunctor( vtkTable* outData, 00153 vtkDataObject* inMeta, 00154 vtkStringArray* rowNames, 00155 AssessFunctor*& dfunc ); 00156 //ETX 00158 00159 int UnbiasedVariance; 00160 int G1Skewness; 00161 int G2Kurtosis; 00162 int SignedDeviations; 00163 00164 private: 00165 vtkDescriptiveStatistics( const vtkDescriptiveStatistics& ); // Not implemented 00166 void operator = ( const vtkDescriptiveStatistics& ); // Not implemented 00167 }; 00168 00169 #endif