vtkPVExtractSelection.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Kitware Inc.
2 // SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
3 // SPDX-License-Identifier: BSD-3-Clause
32 #ifndef vtkPVExtractSelection_h
33 #define vtkPVExtractSelection_h
34 
35 #include "vtkExtractSelection.h"
36 #include "vtkPVVTKExtensionsExtractionModule.h" //needed for exports
37 
38 class vtkSelectionNode;
39 
41 {
42 public:
44  void PrintSelf(ostream& os, vtkIndent indent) override;
45 
46  static const int OUTPUT_PORT_EXTRACTED_DATASET = 0;
47  static const int OUTPUT_PORT_SELECTION_IDS = 1;
48  static const int OUTPUT_PORT_SELECTION_ORIGINAL = 2;
49 
53  static vtkPVExtractSelection* New();
54 
58  void RemoveAllSelectionsInputs() { this->SetInputConnection(1, nullptr); }
59 
60 protected:
62  ~vtkPVExtractSelection() override;
63 
64  // sets up empty output dataset
65  int RequestDataObject(vtkInformation* request, vtkInformationVector** inputVector,
66  vtkInformationVector* outputVector) override;
67 
68  // runs the algorithm and fills the output with results
70 
72 
73  vtkSelectionNode* LocateSelection(unsigned int level, unsigned int index, vtkSelection* sel);
74  vtkSelectionNode* LocateSelection(unsigned int composite_index, vtkSelection* sel);
75 
81  vtkSmartPointer<vtkSelector> NewSelectionOperator(
83 
84 private:
86  void operator=(const vtkPVExtractSelection&) = delete;
87 
88  class vtkSelectionNodeVector;
90  vtkSelectionNodeVector& outputs, vtkDataObject* dataObjectOutput, vtkSelectionNode* sel);
91 
92  // Returns the combined content type for the selection.
93  int GetContentType(vtkSelection* sel);
94 };
95 
96 #endif
type
#define VTKPVVTKEXTENSIONSEXTRACTION_EXPORT
level
info
static vtkExtractSelection * New()
void PrintSelf(ostream &os, vtkIndent indent)
void RemoveAllSelectionsInputs()
Removes all inputs from input port 1.
vtkDataObject * RequestDataInternal(unsigned int composite_index, vtkDataObject *non_composite_input, vtkSelection *sel, vtkInformation *outInfo)
Adds a two more output ports to vtkExtractSelection, the second port contains an id selection and the...
virtual void SetInputConnection(int port, vtkAlgorithmOutput *input)
port
index
void operator=(const vtkObjectBase &)
virtual int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
virtual int FillOutputPortInformation(int port, vtkInformation *info)
virtual int RequestDataObject(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)