VTK
dox/Filters/Statistics/vtkContingencyStatistics.h
Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003 Program:   Visualization Toolkit
00004 Module:    vtkContingencyStatistics.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 2011 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   -------------------------------------------------------------------------*/
00048 #ifndef __vtkContingencyStatistics_h
00049 #define __vtkContingencyStatistics_h
00050 
00051 #include "vtkFiltersStatisticsModule.h" // For export macro
00052 #include "vtkStatisticsAlgorithm.h"
00053 
00054 class vtkMultiBlockDataSet;
00055 class vtkStringArray;
00056 class vtkTable;
00057 class vtkVariant;
00058 class vtkIdTypeArray;
00059 class vtkDoubleArray;
00060 
00061 class VTKFILTERSSTATISTICS_EXPORT vtkContingencyStatistics : public vtkStatisticsAlgorithm
00062 {
00063 public:
00064   vtkTypeMacro(vtkContingencyStatistics, vtkStatisticsAlgorithm);
00065   void PrintSelf(ostream& os, vtkIndent indent);
00066   static vtkContingencyStatistics* New();
00067 
00069 
00071   virtual void Aggregate( vtkDataObjectCollection*,
00072                           vtkMultiBlockDataSet* ) { return; };
00074 
00075 protected:
00076   vtkContingencyStatistics();
00077   ~vtkContingencyStatistics();
00078 
00080 
00081   virtual void Learn( vtkTable*,
00082                       vtkTable*,
00083                       vtkMultiBlockDataSet* );
00085 
00087   virtual void Derive( vtkMultiBlockDataSet* );
00088 
00090 
00091   virtual void Test( vtkTable*,
00092                      vtkMultiBlockDataSet*,
00093                      vtkTable* );
00095 
00097 
00098   virtual void Assess( vtkTable*,
00099                        vtkMultiBlockDataSet*,
00100                        vtkTable* );
00101 //BTX
00103 
00105   virtual void CalculatePValues(vtkTable*);
00106 
00107 //BTX
00109 
00112   virtual void SelectAssessFunctor( vtkTable* outData,
00113                                     vtkDataObject* inMeta,
00114                                     vtkStringArray* rowNames,
00115                                     AssessFunctor*& dfunc );
00117 
00118 
00120   virtual void SelectAssessFunctor( vtkTable* outData,
00121                                     vtkMultiBlockDataSet* inMeta,
00122                                     vtkIdType pairKey,
00123                                     vtkStringArray* rowNames,
00124                                     AssessFunctor*& dfunc );
00125 //ETX
00127 
00128 private:
00129   vtkContingencyStatistics(const vtkContingencyStatistics&); // Not implemented
00130   void operator=(const vtkContingencyStatistics&);   // Not implemented
00131 };
00132 
00133 #endif
00134