VTK
vtkAppendSelection.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkAppendSelection.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 =========================================================================*/
15 /*----------------------------------------------------------------------------
16  Copyright (c) Sandia Corporation
17  See Copyright.txt or http://www.paraview.org/HTML/Copyright.html for details.
18 ----------------------------------------------------------------------------*/
32 #ifndef vtkAppendSelection_h
33 #define vtkAppendSelection_h
34 
35 #include "vtkFiltersCoreModule.h" // For export macro
36 #include "vtkSelectionAlgorithm.h"
37 
38 class vtkSelection;
39 
40 class VTKFILTERSCORE_EXPORT vtkAppendSelection : public vtkSelectionAlgorithm
41 {
42 public:
43  static vtkAppendSelection *New();
44 
46  void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
47 
49 
55  vtkSetMacro(UserManagedInputs,int);
56  vtkGetMacro(UserManagedInputs,int);
57  vtkBooleanMacro(UserManagedInputs,int);
59 
64  void AddInputData(vtkSelection *);
65 
70  void RemoveInputData(vtkSelection *);
71 
73 
76  vtkSelection *GetInput(int idx);
77  vtkSelection *GetInput() { return this->GetInput( 0 ); };
79 
84  void SetNumberOfInputs(int num);
85 
86  // Set Nth input, should only be used when UserManagedInputs is true.
87  void SetInputConnectionByNumber(int num, vtkAlgorithmOutput *input);
88 
90 
98  vtkSetMacro(AppendByUnion, int);
99  vtkGetMacro(AppendByUnion, int);
100  vtkBooleanMacro(AppendByUnion, int);
102 
103 protected:
105  ~vtkAppendSelection() VTK_OVERRIDE;
106 
107  // Usual data generation method
108  int RequestData(vtkInformation *,
109  vtkInformationVector **, vtkInformationVector *) VTK_OVERRIDE;
110  int FillInputPortInformation(int, vtkInformation *) VTK_OVERRIDE;
111 
112  private:
113  // hide the superclass' AddInput() from the user and the compiler
114  void AddInputData(vtkDataObject *)
115  { vtkErrorMacro( << "AddInput() must be called with a vtkSelection not a vtkDataObject."); };
116 
117  int UserManagedInputs;
118  int AppendByUnion;
119 private:
120  vtkAppendSelection(const vtkAppendSelection&) VTK_DELETE_FUNCTION;
121  void operator=(const vtkAppendSelection&) VTK_DELETE_FUNCTION;
122 };
123 
124 #endif
125 
126 
Store vtkAlgorithm input/output information.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
A node in a selection tree.
Definition: vtkSelection.h:43
Proxy object to connect input/output ports.
appends one or more selections together
static vtkSelectionAlgorithm * New()
a simple class to control print indentation
Definition: vtkIndent.h:39
vtkSelection * GetInput()
Get any input of this filter.
Superclass for algorithms that produce only Selection as output.
vtkSetMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
Store zero or more vtkInformation instances.
vtkBooleanMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
general representation of visualization data
Definition: vtkDataObject.h:64