VTK  9.0.1
vtkDirectedAcyclicGraph.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkDirectedAcyclicGraph.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 2008 Sandia Corporation.
17  Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation,
18  the U.S. Government retains certain rights in this software.
19 -------------------------------------------------------------------------*/
46 #ifndef vtkDirectedAcyclicGraph_h
47 #define vtkDirectedAcyclicGraph_h
48 
49 #include "vtkCommonDataModelModule.h" // For export macro
50 #include "vtkDirectedGraph.h"
51 
52 class vtkIdTypeArray;
53 
54 class VTKCOMMONDATAMODEL_EXPORT vtkDirectedAcyclicGraph : public vtkDirectedGraph
55 {
56 public:
57  static vtkDirectedAcyclicGraph* New();
59  void PrintSelf(ostream& os, vtkIndent indent) override;
60 
64  int GetDataObjectType() override { return VTK_DIRECTED_ACYCLIC_GRAPH; }
65 
67 
73 
74 protected:
76  ~vtkDirectedAcyclicGraph() override;
77 
82  bool IsStructureValid(vtkGraph* g) override;
83 
84 private:
86  void operator=(const vtkDirectedAcyclicGraph&) = delete;
87 };
88 
89 #endif
vtkDirectedGraph::IsStructureValid
bool IsStructureValid(vtkGraph *g) override
Check the storage, and accept it if it is a valid undirected graph.
vtkInformationVector
Store zero or more vtkInformation instances.
Definition: vtkInformationVector.h:35
vtkDirectedAcyclicGraph
A rooted tree data structure.
Definition: vtkDirectedAcyclicGraph.h:54
vtkDirectedGraph
A directed graph.
Definition: vtkDirectedGraph.h:44
vtkDirectedGraph::GetData
static vtkDirectedGraph * GetData(vtkInformation *info)
Retrieve a graph from an information vector.
vtkDirectedGraph::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkDirectedGraph.h
vtkDirectedAcyclicGraph::GetDataObjectType
int GetDataObjectType() override
Return what type of dataset this is.
Definition: vtkDirectedAcyclicGraph.h:64
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:33
VTK_DIRECTED_ACYCLIC_GRAPH
#define VTK_DIRECTED_ACYCLIC_GRAPH
Definition: vtkType.h:111
vtkInformation
Store vtkAlgorithm input/output information.
Definition: vtkInformation.h:73
vtkX3D::info
@ info
Definition: vtkX3D.h:382
vtkIdTypeArray
dynamic, self-adjusting array of vtkIdType
Definition: vtkIdTypeArray.h:35
vtkDirectedGraph::New
static vtkDirectedGraph * New()
vtkGraph
Base class for graph data types.
Definition: vtkGraph.h:289