VTK  9.1.0
vtkSMPMergePolyDataHelper.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkSMPMergePolyDataHelper.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 =========================================================================*/
24 #ifndef vtkSMPMergePolyDataHelper_h
25 #define vtkSMPMergePolyDataHelper_h
26 
27 #include "vtkFiltersSMPModule.h"
28 
29 #include <vector>
30 
31 class vtkPolyData;
32 class vtkSMPMergePoints;
33 class vtkIdList;
34 
35 class VTKFILTERSSMP_EXPORT vtkSMPMergePolyDataHelper
36 {
37 public:
39 
48  struct InputData
49  {
59 
60  InputData(vtkPolyData* input, vtkSMPMergePoints* locator, vtkIdList* vertCellOffsets,
61  vtkIdList* vertConnOffsets, vtkIdList* lineCellOffsets, vtkIdList* lineConnOffsets,
62  vtkIdList* polyCellOffsets, vtkIdList* polyConnOffsets)
63  : Input(input)
64  , Locator(locator)
65  , VertCellOffsets(vertCellOffsets)
66  , VertConnOffsets(vertConnOffsets)
67  , LineCellOffsets(lineCellOffsets)
68  , LineConnOffsets(lineConnOffsets)
69  , PolyCellOffsets(polyCellOffsets)
70  , PolyConnOffsets(polyConnOffsets)
71  {
72  }
73  };
74 
82  static vtkPolyData* MergePolyData(std::vector<InputData>& inputs);
83 
84 protected:
87 
88 private:
90  void operator=(const vtkSMPMergePolyDataHelper&) = delete;
91 };
92 
93 #endif
94 // VTK-HeaderTest-Exclude: vtkSMPMergePolyDataHelper.h
list of point or cell ids
Definition: vtkIdList.h:31
concrete dataset represents vertices, lines, polygons, and triangle strips
Definition: vtkPolyData.h:86
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)