VTK  9.3.1
vtkSILBuilder.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
15 #ifndef vtkSILBuilder_h
16 #define vtkSILBuilder_h
17 
18 #include "vtkIOXdmf2Module.h" // For export macro
19 #include "vtkObject.h"
20 
21 VTK_ABI_NAMESPACE_BEGIN
23 class vtkStringArray;
25 
26 class VTKIOXDMF2_EXPORT vtkSILBuilder : public vtkObject
27 {
28 public:
29  static vtkSILBuilder* New();
30  vtkTypeMacro(vtkSILBuilder, vtkObject);
31  void PrintSelf(ostream& os, vtkIndent indent) override;
32 
34 
37  void SetSIL(vtkMutableDirectedGraph*);
38  vtkGetObjectMacro(SIL, vtkMutableDirectedGraph);
40 
44  void Initialize();
45 
47 
50  vtkIdType AddVertex(const char* name);
51  vtkIdType AddChildEdge(vtkIdType parent, vtkIdType child);
52  vtkIdType AddCrossEdge(vtkIdType src, vtkIdType dst);
54 
56 
59  vtkGetMacro(RootVertex, vtkIdType);
61 
62 protected:
63  vtkSILBuilder();
64  ~vtkSILBuilder() override;
65 
69 
71 
72 private:
73  vtkSILBuilder(const vtkSILBuilder&) = delete;
74  void operator=(const vtkSILBuilder&) = delete;
75 };
76 
77 VTK_ABI_NAMESPACE_END
78 #endif
abstract base class for most VTK objects
Definition: vtkObject.h:51
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
a vtkAbstractArray subclass for strings
int vtkIdType
Definition: vtkType.h:315
vtkMutableDirectedGraph * SIL
Definition: vtkSILBuilder.h:68
vtkStringArray * NamesArray
Definition: vtkSILBuilder.h:66
vtkIdType RootVertex
Definition: vtkSILBuilder.h:70
a simple class to control print indentation
Definition: vtkIndent.h:28
An editable directed graph.
dynamic, self-adjusting array of unsigned char
helper class to build a SIL i.e.
Definition: vtkSILBuilder.h:26
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
vtkUnsignedCharArray * CrossEdgesArray
Definition: vtkSILBuilder.h:67