VTK  9.3.20240419
vtkDirectedAcyclicGraph.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2 // SPDX-FileCopyrightText: Copyright 2008 Sandia Corporation
3 // SPDX-License-Identifier: LicenseRef-BSD-3-Clause-Sandia-USGov
33 #ifndef vtkDirectedAcyclicGraph_h
34 #define vtkDirectedAcyclicGraph_h
35 
36 #include "vtkCommonDataModelModule.h" // For export macro
37 #include "vtkDirectedGraph.h"
38 
39 VTK_ABI_NAMESPACE_BEGIN
40 class vtkIdTypeArray;
41 
42 class VTKCOMMONDATAMODEL_EXPORT vtkDirectedAcyclicGraph : public vtkDirectedGraph
43 {
44 public:
47  void PrintSelf(ostream& os, vtkIndent indent) override;
48 
52  int GetDataObjectType() override { return VTK_DIRECTED_ACYCLIC_GRAPH; }
53 
55 
61 
62 protected:
65 
70  bool IsStructureValid(vtkGraph* g) override;
71 
72 private:
74  void operator=(const vtkDirectedAcyclicGraph&) = delete;
75 };
76 
77 VTK_ABI_NAMESPACE_END
78 #endif
A rooted tree data structure.
bool IsStructureValid(vtkGraph *g) override
Check the storage, and accept it if it is a valid tree.
static vtkDirectedAcyclicGraph * GetData(vtkInformation *info)
Retrieve a graph from an information vector.
int GetDataObjectType() override
Return what type of dataset this is.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
static vtkDirectedAcyclicGraph * New()
static vtkDirectedAcyclicGraph * GetData(vtkInformationVector *v, int i=0)
Retrieve a graph from an information vector.
~vtkDirectedAcyclicGraph() override
A directed graph.
Base class for graph data types.
Definition: vtkGraph.h:340
dynamic, self-adjusting array of vtkIdType
a simple class to control print indentation
Definition: vtkIndent.h:108
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
@ info
Definition: vtkX3D.h:376
#define VTK_DIRECTED_ACYCLIC_GRAPH
Definition: vtkType.h:91