VTK  9.3.0
vtkSMPMergePolyDataHelper.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
12 #ifndef vtkSMPMergePolyDataHelper_h
13 #define vtkSMPMergePolyDataHelper_h
14 
15 #include "vtkFiltersSMPModule.h"
16 
17 #include <vector>
18 
19 VTK_ABI_NAMESPACE_BEGIN
20 class vtkPolyData;
21 class vtkSMPMergePoints;
22 class vtkIdList;
23 
24 class VTKFILTERSSMP_EXPORT vtkSMPMergePolyDataHelper
25 {
26 public:
28 
37  struct InputData
38  {
48 
49  InputData(vtkPolyData* input, vtkSMPMergePoints* locator, vtkIdList* vertCellOffsets,
50  vtkIdList* vertConnOffsets, vtkIdList* lineCellOffsets, vtkIdList* lineConnOffsets,
51  vtkIdList* polyCellOffsets, vtkIdList* polyConnOffsets)
52  : Input(input)
53  , Locator(locator)
54  , VertCellOffsets(vertCellOffsets)
55  , VertConnOffsets(vertConnOffsets)
56  , LineCellOffsets(lineCellOffsets)
57  , LineConnOffsets(lineConnOffsets)
58  , PolyCellOffsets(polyCellOffsets)
59  , PolyConnOffsets(polyConnOffsets)
60  {
61  }
62  };
63 
71  static vtkPolyData* MergePolyData(std::vector<InputData>& inputs);
72 
73 protected:
76 
77 private:
79  void operator=(const vtkSMPMergePolyDataHelper&) = delete;
80 };
81 
82 VTK_ABI_NAMESPACE_END
83 #endif
84 // VTK-HeaderTest-Exclude: vtkSMPMergePolyDataHelper.h
list of point or cell ids
Definition: vtkIdList.h:32
concrete dataset represents vertices, lines, polygons, and triangle strips
Definition: vtkPolyData.h:89
Class designed to help with merging of points in parallel.
Utility class for merging poly data in parallel This class is designed as a utility class to help mer...
~vtkSMPMergePolyDataHelper()
Given a vector of vtkSMPMergePolyDataHelper::InputData, it merges them and returns a new vtkPolyData ...
vtkSMPMergePolyDataHelper()
Given a vector of vtkSMPMergePolyDataHelper::InputData, it merges them and returns a new vtkPolyData ...
static vtkPolyData * MergePolyData(std::vector< InputData > &inputs)
Given a vector of vtkSMPMergePolyDataHelper::InputData, it merges them and returns a new vtkPolyData ...
This is the data structure needed by the MergePolyData function.
InputData(vtkPolyData *input, vtkSMPMergePoints *locator, vtkIdList *vertCellOffsets, vtkIdList *vertConnOffsets, vtkIdList *lineCellOffsets, vtkIdList *lineConnOffsets, vtkIdList *polyCellOffsets, vtkIdList *polyConnOffsets)