VTK  9.5.20250606
vtkRedistributeDataSetToSubCommFilter.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Copyright (c) Kitware, Inc.
2// SPDX-License-Identifier: BSD-3-Clause
29#ifndef vtkRedistributeDataSetToSubCommFilter_h
30#define vtkRedistributeDataSetToSubCommFilter_h
31
33#include "vtkFiltersParallelDIY2Module.h" // for export macros
34#include "vtkSmartPointer.h" // for vtkSmartPointer
35
36#include <memory> // for std::unique_ptr
37
38VTK_ABI_NAMESPACE_BEGIN
39
41class vtkProcessGroup;
42
43class VTKFILTERSPARALLELDIY2_EXPORT vtkRedistributeDataSetToSubCommFilter
45{
46public:
49 void PrintSelf(ostream& os, vtkIndent indent) override;
50
52
56 vtkGetObjectMacro(Controller, vtkMultiProcessController);
58
60
66 vtkGetObjectMacro(SubGroup, vtkProcessGroup);
68
70
78 void SetEnableCutCaching(bool optimize);
81
82protected:
85
86 int FillInputPortInformation(int port, vtkInformation* info) override;
90
91private:
92 vtkMultiProcessController* Controller;
93 vtkProcessGroup* SubGroup;
94
95 class vtkInternals;
96 std::unique_ptr<vtkInternals> Internal;
97};
98
99VTK_ABI_NAMESPACE_END
100#endif
Superclass for algorithms that produce only data object as output.
a simple class to control print indentation
Definition vtkIndent.h:108
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
Multiprocessing communication superclass.
A subgroup of processes from a communicator.
redistributes input dataset to specific mpi ranks
static vtkRedistributeDataSetToSubCommFilter * New()
void SetSubGroup(vtkProcessGroup *)
Set/Get the SubGroup.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
int RequestDataObject(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
int RequestInformation(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
int FillInputPortInformation(int port, vtkInformation *info) override
Fill the input port information objects for this algorithm.
void SetController(vtkMultiProcessController *)
Set/Get the multi-process controller that owns the whole input dataset.
void SetEnableCutCaching(bool optimize)
Internally, this filter uses vtkRedistributeDataSetFilter to partition the data to all ranks before a...
bool GetEnableCutCaching()
Internally, this filter uses vtkRedistributeDataSetFilter to partition the data to all ranks before a...
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override