VTK  9.7.1
vtkImageConnector.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
17 #ifndef vtkImageConnector_h
18 #define vtkImageConnector_h
19 
20 #include "vtkImagingMorphologicalModule.h" // For export macro
21 #include "vtkObject.h"
22 
23 VTK_ABI_NAMESPACE_BEGIN
24 class vtkImageData;
25 
26 //
27 // Special classes for manipulating data
28 //
29 // For the breadth first search
30 //
31 // Excluded from JavaScript wrapping because there is no delete function
33 { //;prevent man page generation
34 public:
36  void* Pointer;
37  int Index[3];
39 };
40 
41 class VTKIMAGINGMORPHOLOGICAL_EXPORT vtkImageConnector : public vtkObject
42 {
43 public:
44  static vtkImageConnector* New();
45 
46  vtkTypeMacro(vtkImageConnector, vtkObject);
47  void PrintSelf(ostream& os, vtkIndent indent) override;
48 
49  vtkImageConnectorSeed* NewSeed(int index[3], void* ptr);
50  void AddSeed(vtkImageConnectorSeed* seed);
51  void AddSeedToEnd(vtkImageConnectorSeed* seed);
52 
53  void RemoveAllSeeds();
54 
56 
59  vtkSetMacro(ConnectedValue, unsigned char);
60  vtkGetMacro(ConnectedValue, unsigned char);
61  vtkSetMacro(UnconnectedValue, unsigned char);
62  vtkGetMacro(UnconnectedValue, unsigned char);
64 
70  void MarkData(vtkImageData* data, int dimensionality, VTK_FUTURE_CONST int ext[6]);
71 
72 protected:
74  ~vtkImageConnector() override;
75 
76  unsigned char ConnectedValue;
77  unsigned char UnconnectedValue;
78 
79  vtkImageConnectorSeed* PopSeed();
80 
83 
84 private:
85  vtkImageConnector(const vtkImageConnector&) = delete;
86  void operator=(const vtkImageConnector&) = delete;
87 };
88 
89 VTK_ABI_NAMESPACE_END
90 #endif
Create a binary image of a sphere.
abstract base class for most VTK objects
Definition: vtkObject.h:52
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
unsigned char ConnectedValue
static vtkImageConnectorSeed * New()
a simple class to control print indentation
Definition: vtkIndent.h:28
topologically and geometrically regular array of data
Definition: vtkImageData.h:45
vtkImageConnectorSeed * LastSeed
#define VTK_WRAPEXCLUDE_JAVASCRIPT
vtkImageConnectorSeed * Next
unsigned char UnconnectedValue
vtkImageConnectorSeed * Seeds
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...