VTK  9.2.6
vtkPartitionedDataSetSource.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkPartitionedDataSetSource.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 =========================================================================*/
38 #ifndef vtkPartitionedDataSetSource_h
39 #define vtkPartitionedDataSetSource_h
40 
41 #include "vtkFiltersSourcesModule.h" // For export macro
43 
44 #include <map> // For std::map
45 
48 
49 class VTKFILTERSSOURCES_EXPORT vtkPartitionedDataSetSource : public vtkPartitionedDataSetAlgorithm
50 {
51 public:
54  void PrintSelf(ostream& os, vtkIndent indent) override;
55 
57 
67  void EnableRank(int rank);
68  void EnableAllRanks();
69  void DisableRank(int rank);
70  void DisableAllRanks();
71  bool IsEnabledRank(int rank);
73 
75 
84  vtkSetClampMacro(NumberOfPartitions, int, 0, VTK_INT_MAX);
85  vtkGetMacro(NumberOfPartitions, int);
87 
89 
92  void SetParametricFunction(vtkParametricFunction*);
93  vtkGetObjectMacro(ParametricFunction, vtkParametricFunction);
95 
96 protected:
98  ~vtkPartitionedDataSetSource() override;
99 
102 
103 private:
105  void operator=(const vtkPartitionedDataSetSource&) = delete;
106 
107  bool RanksEnabledByDefault = true;
108  int NumberOfPartitions = 0;
109  std::map<int, int> Allocations;
110  vtkParametricFunction* ParametricFunction = nullptr;
111 };
112 
113 #endif
composite dataset to encapsulates a dataset consisting of partitions.
Superclass for algorithms that produce vtkPartitionedDataSetAlgorithm.
Store vtkAlgorithm input/output information.
#define VTK_INT_MAX
Definition: vtkType.h:155
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
a source that produces a vtkPartitionedDataSet.
abstract interface for parametric functions
a simple class to control print indentation
Definition: vtkIndent.h:39
virtual int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
Methods for subclasses to override to handle different pipeline requests.
virtual int RequestInformation(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
Methods for subclasses to override to handle different pipeline requests.
Store zero or more vtkInformation instances.
static vtkAlgorithm * New()