VTK  9.3.1
vtkComputeQuantiles.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2 // SPDX-License-Identifier: BSD-3-Clause
26 #ifndef vtkComputeQuantiles_h
27 #define vtkComputeQuantiles_h
28 
29 #include "vtkFiltersStatisticsModule.h" // For export macro
30 #include "vtkTableAlgorithm.h"
31 
32 VTK_ABI_NAMESPACE_BEGIN
33 class vtkDataSet;
34 class vtkDoubleArray;
35 class vtkFieldData;
36 class vtkOrderStatistics;
37 class vtkTable;
38 
39 class VTKFILTERSSTATISTICS_EXPORT vtkComputeQuantiles : public vtkTableAlgorithm
40 {
41 public:
42  static vtkComputeQuantiles* New();
44  void PrintSelf(ostream& os, vtkIndent indent) override;
45 
47 
51  vtkGetMacro(NumberOfIntervals, int);
52  vtkSetMacro(NumberOfIntervals, int);
54 
55 protected:
57  ~vtkComputeQuantiles() override = default;
58 
60 
61  int RequestData(vtkInformation* request, vtkInformationVector** inputVector,
62  vtkInformationVector* outputVector) override;
63 
64  void ComputeTable(vtkDataObject*, vtkTable*, vtkIdType);
65 
66  virtual vtkOrderStatistics* CreateOrderStatisticsFilter();
67 
68  int FieldAssociation = -1;
69  int NumberOfIntervals = 4;
70 
71 private:
72  void operator=(const vtkComputeQuantiles&) = delete;
74 
75  int GetInputFieldAssociation();
76  vtkFieldData* GetInputFieldData(vtkDataObject* input);
77 };
78 
79 VTK_ABI_NAMESPACE_END
80 #endif
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
static vtkTableAlgorithm * New()
Store vtkAlgorithm input/output information.
abstract class to specify dataset behavior
Definition: vtkDataSet.h:52
A class for univariate order statistics.
int vtkIdType
Definition: vtkType.h:315
dynamic, self-adjusting array of double
a simple class to control print indentation
Definition: vtkIndent.h:28
Extract Ntiles and extremum values of all columns of a table or all fields of a dataset.
int FillInputPortInformation(int port, vtkInformation *info) override
Fill the input port information objects for this algorithm.
A table, which contains similar-typed columns of data.
Definition: vtkTable.h:58
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
This is called by the superclass.
Superclass for algorithms that produce only vtkTables as output.
Store zero or more vtkInformation instances.
general representation of visualization data
Definition: vtkDataObject.h:54
represent and manipulate fields of data
Definition: vtkFieldData.h:51