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 ----------------------------------------------------------------------------*/
29 #ifndef vtkAppendSelection_h
30 #define vtkAppendSelection_h
31 
32 #include "vtkFiltersCoreModule.h" // For export macro
33 #include "vtkSelectionAlgorithm.h"
34 
35 class vtkSelection;
36 
37 class VTKFILTERSCORE_EXPORT vtkAppendSelection : public vtkSelectionAlgorithm
38 {
39 public:
40  static vtkAppendSelection *New();
41 
43  void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
44 
46 
52  vtkSetMacro(UserManagedInputs,int);
53  vtkGetMacro(UserManagedInputs,int);
54  vtkBooleanMacro(UserManagedInputs,int);
56 
61  void AddInputData(vtkSelection *);
62 
67  void RemoveInputData(vtkSelection *);
68 
70 
73  vtkSelection *GetInput(int idx);
74  vtkSelection *GetInput() { return this->GetInput( 0 ); };
76 
81  void SetNumberOfInputs(int num);
82 
83  // Set Nth input, should only be used when UserManagedInputs is true.
84  void SetInputConnectionByNumber(int num, vtkAlgorithmOutput *input);
85 
87 
95  vtkSetMacro(AppendByUnion, int);
96  vtkGetMacro(AppendByUnion, int);
97  vtkBooleanMacro(AppendByUnion, int);
99 
100 protected:
102  ~vtkAppendSelection() VTK_OVERRIDE;
103 
104  // Usual data generation method
105  int RequestData(vtkInformation *,
106  vtkInformationVector **, vtkInformationVector *) VTK_OVERRIDE;
107  int FillInputPortInformation(int, vtkInformation *) VTK_OVERRIDE;
108 
109  private:
110  // hide the superclass' AddInput() from the user and the compiler
111  void AddInputData(vtkDataObject *)
112  { vtkErrorMacro( << "AddInput() must be called with a vtkSelection not a vtkDataObject."); };
113 
114  int UserManagedInputs;
115  int AppendByUnion;
116 private:
117  vtkAppendSelection(const vtkAppendSelection&) VTK_DELETE_FUNCTION;
118  void operator=(const vtkAppendSelection&) VTK_DELETE_FUNCTION;
119 };
120 
121 #endif
122 
123 
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:37
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:33
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:58