VTK  9.1.0
vtkPartitionBalancer.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkPartitionBalancer.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 =========================================================================*/
62 #ifndef vtkPartitionBalancer_h
63 #define vtkPartitionBalancer_h
64 
65 #include "vtkFiltersParallelModule.h" // for export macros
67 
69 
70 class VTKFILTERSPARALLEL_EXPORT vtkPartitionBalancer : public vtkPartitionedDataSetAlgorithm
71 {
72 public:
75  void PrintSelf(ostream& os, vtkIndent indent) override;
76 
78 
83  vtkGetObjectMacro(Controller, vtkMultiProcessController);
85 
89  enum Mode
90  {
92  Squash
93  };
94 
96 
100  vtkGetMacro(Mode, int);
102 
117 
132 
133 protected:
136 
138 
143 
144  int Mode;
145 
146 private:
148  void operator=(const vtkPartitionBalancer&) = delete;
149 };
150 
151 #endif
vtkPartitionBalancer::~vtkPartitionBalancer
~vtkPartitionBalancer() override
vtkInformationVector
Store zero or more vtkInformation instances.
Definition: vtkInformationVector.h:145
vtkPartitionBalancer::Mode
int Mode
Definition: vtkPartitionBalancer.h:144
vtkPartitionBalancer::SetModeToExpand
void SetModeToExpand()
Sets filter to expand mode.
Definition: vtkPartitionBalancer.h:116
vtkPartitionBalancer::Squash
@ Squash
Definition: vtkPartitionBalancer.h:92
vtkPartitionBalancer::Expand
@ Expand
Definition: vtkPartitionBalancer.h:91
vtkPartitionBalancer::New
static vtkPartitionBalancer * New()
vtkMultiProcessController
Multiprocessing communication superclass.
Definition: vtkMultiProcessController.h:77
vtkPartitionedDataSetAlgorithm
Superclass for algorithms that produce vtkPartitionedDataSetAlgorithm.
Definition: vtkPartitionedDataSetAlgorithm.h:32
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:113
vtkPartitionBalancer::SetModeToSquash
void SetModeToSquash()
Sets filter to squash mode.
Definition: vtkPartitionBalancer.h:131
vtkPartitionBalancer
Balances input partitioned data sets so each rank has the same number of data sets.
Definition: vtkPartitionBalancer.h:71
vtkInformation
Store vtkAlgorithm input/output information.
Definition: vtkInformation.h:183
vtkPartitionedDataSetAlgorithm.h
vtkPartitionBalancer::SetController
void SetController(vtkMultiProcessController *)
Get/Set the controller to use.
vtkPartitionBalancer::Mode
Mode
Modes defining the layout of the output.
Definition: vtkPartitionBalancer.h:90
vtkPartitionBalancer::RequestData
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
Methods for subclasses to override to handle different pipeline requests.
vtkPartitionBalancer::Controller
vtkMultiProcessController * Controller
Local controller.
Definition: vtkPartitionBalancer.h:142
vtkPartitionBalancer::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkPartitionBalancer::vtkPartitionBalancer
vtkPartitionBalancer()