VTK  9.3.20240422
vtkSQLDatabaseGraphSource.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
14#ifndef vtkSQLDatabaseGraphSource_h
15#define vtkSQLDatabaseGraphSource_h
16
17#include "vtkGraphAlgorithm.h"
18#include "vtkIOSQLModule.h" // For export macro
19#include "vtkStdString.h" // for vtkStdString
20
21VTK_ABI_NAMESPACE_BEGIN
23
24class VTKIOSQL_EXPORT vtkSQLDatabaseGraphSource : public vtkGraphAlgorithm
25{
26public:
29 void PrintSelf(ostream& os, vtkIndent indent);
30
32 void SetURL(const vtkStdString& url);
33
34 void SetPassword(const vtkStdString& password);
35
37 void SetEdgeQuery(const vtkStdString& query);
38
40 void SetVertexQuery(const vtkStdString& query);
41
42 void AddLinkVertex(const char* column, const char* domain = 0, int hidden = 0);
44 void AddLinkEdge(const char* column1, const char* column2);
46
48
52 vtkGetMacro(GenerateEdgePedigreeIds, bool);
53 vtkSetMacro(GenerateEdgePedigreeIds, bool);
54 vtkBooleanMacro(GenerateEdgePedigreeIds, bool);
56
58
61 vtkSetStringMacro(EdgePedigreeIdArrayName);
62 vtkGetStringMacro(EdgePedigreeIdArrayName);
64
66
70 vtkSetMacro(Directed, bool);
71 vtkGetMacro(Directed, bool);
72 vtkBooleanMacro(Directed, bool);
74
75protected:
78
80
82
85
86private:
88 void operator=(const vtkSQLDatabaseGraphSource&) = delete;
89
94 vtkEventForwarderCommand* EventForwarder;
95
96 class implementation;
97 implementation* const Implementation;
98
99 bool Directed;
100};
101
102VTK_ABI_NAMESPACE_END
103#endif
a simple event forwarder command
Superclass for algorithms that produce only graph as output.
a simple class to control print indentation
Definition vtkIndent.h:108
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
Generates a vtkGraph based on an SQL query.
void SetVertexQuery(const vtkStdString &query)
static vtkSQLDatabaseGraphSource * New()
~vtkSQLDatabaseGraphSource() override
void AddLinkVertex(const char *column, const char *domain=0, int hidden=0)
void SetURL(const vtkStdString &url)
vtkStdString GetEdgeQuery()
int RequestDataObject(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
vtkStdString GetVertexQuery()
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
This is called by the superclass.
void SetEdgeQuery(const vtkStdString &query)
void SetPassword(const vtkStdString &password)
void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.
void AddLinkEdge(const char *column1, const char *column2)
Wrapper around std::string to keep symbols short.