VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkMultiCorrelativeStatistics.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 -------------------------------------------------------------------------*/ 00080 #ifndef vtkMultiCorrelativeStatistics_h 00081 #define vtkMultiCorrelativeStatistics_h 00082 00083 #include "vtkFiltersStatisticsModule.h" // For export macro 00084 #include "vtkStatisticsAlgorithm.h" 00085 00086 class vtkDoubleArray; 00087 class vtkMultiBlockDataSet; 00088 class vtkOrderStatistics; 00089 class vtkVariant; 00090 00091 class VTKFILTERSSTATISTICS_EXPORT vtkMultiCorrelativeStatistics : public vtkStatisticsAlgorithm 00092 { 00093 public: 00094 vtkTypeMacro(vtkMultiCorrelativeStatistics, vtkStatisticsAlgorithm); 00095 virtual void PrintSelf( ostream& os, vtkIndent indent ); 00096 static vtkMultiCorrelativeStatistics* New(); 00097 00099 00100 virtual void Aggregate( vtkDataObjectCollection*, 00101 vtkMultiBlockDataSet* ); 00103 00105 00107 vtkSetMacro( MedianAbsoluteDeviation, bool ); 00108 vtkGetMacro( MedianAbsoluteDeviation, bool ); 00109 vtkBooleanMacro( MedianAbsoluteDeviation, bool ); 00111 00112 protected: 00113 vtkMultiCorrelativeStatistics(); 00114 ~vtkMultiCorrelativeStatistics(); 00115 00117 00118 virtual void Learn( vtkTable*, 00119 vtkTable*, 00120 vtkMultiBlockDataSet* ); 00122 00124 virtual void Derive( vtkMultiBlockDataSet* ); 00125 00127 00128 virtual void Assess( vtkTable*, 00129 vtkMultiBlockDataSet*, 00130 vtkTable* ); 00132 00134 00135 virtual void Test( vtkTable*, 00136 vtkMultiBlockDataSet*, 00137 vtkTable* ) { return; } 00139 00140 //BTX 00142 00143 virtual void SelectAssessFunctor( vtkTable* inData, 00144 vtkDataObject* inMeta, 00145 vtkStringArray* rowNames, 00146 AssessFunctor*& dfunc ); 00147 //ETX 00149 00151 virtual void ComputeMedian( vtkTable* inData, vtkTable* outData ); 00152 00155 virtual vtkOrderStatistics* CreateOrderStatisticsInstance(); 00156 00157 bool MedianAbsoluteDeviation; 00158 00159 private: 00160 vtkMultiCorrelativeStatistics( const vtkMultiCorrelativeStatistics& ); // Not implemented 00161 void operator = ( const vtkMultiCorrelativeStatistics& ); // Not implemented 00162 }; 00163 00164 #endif 00165 00166