VTK  9.3.1
vtkOrderStatistics.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2 // SPDX-FileCopyrightText: Copyright 2011 Sandia Corporation
3 // SPDX-License-Identifier: LicenseRef-BSD-3-Clause-Sandia-USGov
33 #ifndef vtkOrderStatistics_h
34 #define vtkOrderStatistics_h
35 
36 #include "vtkFiltersStatisticsModule.h" // For export macro
37 #include "vtkStatisticsAlgorithm.h"
38 
39 VTK_ABI_NAMESPACE_BEGIN
41 class vtkStringArray;
42 class vtkTable;
43 class vtkVariant;
44 
45 class VTKFILTERSSTATISTICS_EXPORT vtkOrderStatistics : public vtkStatisticsAlgorithm
46 {
47 public:
49  void PrintSelf(ostream& os, vtkIndent indent) override;
50  static vtkOrderStatistics* New();
51 
56  {
57  InverseCDF = 0, // Identical to method 1 of R
58  InverseCDFAveragedSteps = 1, // Identical to method 2 of R, ignored for non-numeric types
59  NearestObservation = 2 // Identical to method 3 of R
60  };
61 
63 
66  vtkSetMacro(NumberOfIntervals, vtkIdType);
67  vtkGetMacro(NumberOfIntervals, vtkIdType);
69 
71 
74  vtkSetMacro(QuantileDefinition, QuantileDefinitionType);
75  void SetQuantileDefinition(int);
77 
79 
82  vtkSetMacro(Quantize, bool);
83  vtkGetMacro(Quantize, bool);
85 
87 
91  vtkSetMacro(MaximumHistogramSize, vtkIdType);
92  vtkGetMacro(MaximumHistogramSize, vtkIdType);
94 
98  vtkIdType GetQuantileDefinition() { return static_cast<vtkIdType>(this->QuantileDefinition); }
99 
105  bool SetParameter(const char* parameter, int index, vtkVariant value) override;
106 
112 
114 
124  vtkSetMacro(GhostsToSkip, unsigned char);
125  vtkGetMacro(GhostsToSkip, unsigned char);
127 
128 protected:
130  ~vtkOrderStatistics() override;
131 
133 
137  void Learn(vtkTable*, vtkTable*, vtkMultiBlockDataSet*) override;
138 
142  void Derive(vtkMultiBlockDataSet*) override;
143 
147  void Test(vtkTable*, vtkMultiBlockDataSet*, vtkTable*) override;
148 
152  void Assess(vtkTable* inData, vtkMultiBlockDataSet* inMeta, vtkTable* outData) override
153  {
154  this->Superclass::Assess(inData, inMeta, outData, 1);
155  }
156 
160  void SelectAssessFunctor(vtkTable* outData, vtkDataObject* inMeta, vtkStringArray* rowNames,
161  AssessFunctor*& dfunc) override;
162 
165  bool Quantize;
168  unsigned char GhostsToSkip;
169 
170 private:
171  vtkOrderStatistics(const vtkOrderStatistics&) = delete;
172  void operator=(const vtkOrderStatistics&) = delete;
173 };
174 
175 VTK_ABI_NAMESPACE_END
176 #endif
static vtkTableAlgorithm * New()
Store vtkAlgorithm input/output information.
A class for univariate order statistics.
maintain an unordered list of data objects
void Aggregate(vtkDataObjectCollection *, vtkMultiBlockDataSet *) override
Given a collection of models, calculate aggregate model NB: not implemented.
unsigned char GhostsToSkip
virtual void Test(vtkTable *, vtkMultiBlockDataSet *, vtkTable *)=0
Execute the calculations required by the Test option.
a vtkAbstractArray subclass for strings
void Assess(vtkTable *inData, vtkMultiBlockDataSet *inMeta, vtkTable *outData) override
Execute the calculations required by the Assess option.
int vtkIdType
Definition: vtkType.h:315
A type representing the union of many types.
Definition: vtkVariant.h:52
Base class for statistics algorithms.
a simple class to control print indentation
Definition: vtkIndent.h:28
virtual void Learn(vtkTable *, vtkTable *, vtkMultiBlockDataSet *)=0
Execute the calculations required by the Learn option, given some input Data.
QuantileDefinitionType
The type of quantile definition.
virtual void Derive(vtkMultiBlockDataSet *)=0
Execute the calculations required by the Derive option.
A table, which contains similar-typed columns of data.
Definition: vtkTable.h:58
virtual bool SetParameter(const char *parameter, int index, vtkVariant value)
A convenience method (in particular for access from other applications) to set parameter values of Le...
Composite dataset that organizes datasets into blocks.
virtual void SelectAssessFunctor(vtkTable *outData, vtkDataObject *inMeta, vtkStringArray *rowNames, AssessFunctor *&dfunc)=0
A pure virtual method to select the appropriate assessment functor.
QuantileDefinitionType QuantileDefinition
Store zero or more vtkInformation instances.
general representation of visualization data
Definition: vtkDataObject.h:54
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkIdType GetQuantileDefinition()
Get the quantile definition.
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.