VTK
vtkOrderStatistics.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3 Program: Visualization Toolkit
4 Module: vtkOrderStatistics.h
5 
6 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7 All rights reserved.
8 See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10 This software is distributed WITHOUT ANY WARRANTY; without even
11 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12 PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
15 /*-------------------------------------------------------------------------
16  Copyright 2011 Sandia Corporation.
17  Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation,
18  the U.S. Government retains certain rights in this software.
19  -------------------------------------------------------------------------*/
48 #ifndef vtkOrderStatistics_h
49 #define vtkOrderStatistics_h
50 
51 #include "vtkFiltersStatisticsModule.h" // For export macro
52 #include "vtkStatisticsAlgorithm.h"
53 
55 class vtkStringArray;
56 class vtkTable;
57 class vtkVariant;
58 
60 {
61 public:
63  void PrintSelf(ostream& os, vtkIndent indent);
64  static vtkOrderStatistics* New();
65 
66 //BTX
68 
70  InverseCDF = 0, // Identical to method 1 of R
71  InverseCDFAveragedSteps = 1, // Identical to method 2 of R, ignored for non-numeric types
72  NearestObservation = 2 // Identical to method 3 of R
73  };
74 //ETX
76 
78 
79  vtkSetMacro( NumberOfIntervals, vtkIdType );
80  vtkGetMacro( NumberOfIntervals, vtkIdType );
82 
84 
85  vtkSetMacro( QuantileDefinition, QuantileDefinitionType );
86  void SetQuantileDefinition ( int );
88 
90 
92  vtkSetMacro( Quantize, bool );
93  vtkGetMacro( Quantize, bool );
95 
97 
99  vtkSetMacro( MaximumHistogramSize, vtkIdType );
100  vtkGetMacro( MaximumHistogramSize, vtkIdType );
102 
104  vtkIdType GetQuantileDefinition() { return static_cast<vtkIdType>( this->QuantileDefinition ); }
105 
107 
110  virtual bool SetParameter( const char* parameter,
111  int index,
112  vtkVariant value );
114 
116 
119  vtkMultiBlockDataSet* ) { return; };
121 
122 protected:
125 
127 
128  virtual void Learn( vtkTable*,
129  vtkTable*,
132 
134  virtual void Derive( vtkMultiBlockDataSet* );
135 
137 
138  virtual void Test( vtkTable*,
140  vtkTable* );
142 
144 
145  virtual void Assess( vtkTable* inData,
146  vtkMultiBlockDataSet* inMeta,
147  vtkTable* outData )
148  { this->Superclass::Assess( inData, inMeta, outData, 1 ); }
150 
151 //BTX
153 
154  virtual void SelectAssessFunctor( vtkTable* outData,
155  vtkDataObject* inMeta,
156  vtkStringArray* rowNames,
157  AssessFunctor*& dfunc );
158 //ETX
160 
163  bool Quantize;
165 
166 private:
167  vtkOrderStatistics(const vtkOrderStatistics&); // Not implemented
168  void operator=(const vtkOrderStatistics&); // Not implemented
169 };
170 
171 #endif
virtual void Assess(vtkTable *inData, vtkMultiBlockDataSet *inMeta, vtkTable *outData)
static vtkTableAlgorithm * New()
void PrintSelf(ostream &os, vtkIndent indent)
A class for univariate order statistics.
maintain an unordered list of data objects
virtual void Test(vtkTable *, vtkMultiBlockDataSet *, vtkTable *)=0
a vtkAbstractArray subclass for strings
int vtkIdType
Definition: vtkType.h:275
A atomic type representing the union of many types.
Definition: vtkVariant.h:78
Base class for statistics algorithms.
a simple class to control print indentation
Definition: vtkIndent.h:38
virtual void Learn(vtkTable *, vtkTable *, vtkMultiBlockDataSet *)=0
virtual void Derive(vtkMultiBlockDataSet *)=0
A table, which contains similar-typed columns of data.
Definition: vtkTable.h:67
virtual bool SetParameter(const char *parameter, int index, vtkVariant value)
Composite dataset that organizes datasets into blocks.
virtual void SelectAssessFunctor(vtkTable *outData, vtkDataObject *inMeta, vtkStringArray *rowNames, AssessFunctor *&dfunc)=0
virtual void Aggregate(vtkDataObjectCollection *, vtkMultiBlockDataSet *)
QuantileDefinitionType QuantileDefinition
#define VTKFILTERSSTATISTICS_EXPORT
general representation of visualization data
Definition: vtkDataObject.h:64
vtkIdType GetQuantileDefinition()