|
Open Graph Drawing Framework |
v. 2023.09 (Elderberry)
|
|
|
Go to the documentation of this file.
45 class ClusterGraphAttributes;
46 class GraphAttributes;
177 Graph(
const bool& paramStrict,
const bool& dir, std::string* idString,
227 AsgnStmt(
const std::string& lhsString,
const std::string& rhsString);
266 const std::string
id;
269 NodeId(
const std::string& idString,
Port* paramPort);
336 explicit Parser(std::istream& in);
356 const std::string&
id);
374 std::vector<Ast::AttrList*>& edgeDefaultsVector, std::set<node>& nodeSet);
382 std::vector<Ast::AttrList*>& newEdgeDefaults)
const;
Port * parsePort(Iterator current, Iterator &rest)
SubgraphData(cluster root, std::vector< Ast::AttrList * > &nodeDefaultsVector, std::vector< Ast::AttrList * > &edgeDefaultsVector, std::set< node > &nodeSet)
Initializes structure with given data.
Declaration and implementation of HashArray class.
The namespace for all OGDF objects.
std::vector< Ast::AttrList * > & nodeDefaults
Stores additional attributes of a graph (like layout information).
NodeId * parseNodeId(Iterator current, Iterator &rest)
Includes declaration of graph class.
AsgnStmt(const std::string &lhsString, const std::string &rhsString)
EdgeRhs(EdgeLhs *headEdgeLHS, EdgeRhs *tailEdgeRHS)
bool read(Parser &P, ogdf::Graph &G, GraphAttributes *GA, ClusterGraph *C, ClusterGraphAttributes *CA)
Stmt * parseStmt(Iterator current, Iterator &rest)
virtual bool read(Parser &P, ogdf::Graph &G, GraphAttributes *GA, ClusterGraph *C, ClusterGraphAttributes *CA, const SubgraphData &data) override
AsgnStmt * parseAsgnStmt(Iterator current, Iterator &rest)
node requestNode(Graph &G, GraphAttributes *GA, ClusterGraph *C, const SubgraphData &data, const std::string &id)
Perfoms a node query, returning node for given attribute.
AList * parseAList(Iterator current, Iterator &rest)
Declares stuff related to DOT format lexical analysis.
AList(AsgnStmt *headAsgnStmt, AList *tailAList)
AttrStmt * parseAttrStmt(Iterator current, Iterator &rest)
SubgraphData withNodes(std::set< node > &newNodes) const
Returns almost the same structure, but with new node list.
NodeStmt(NodeId *nodeID, AttrList *attrList)
EdgeStmt(EdgeLhs *edgeLHS, EdgeRhs *edgeRHS, AttrList *attrList)
std::vector< Token > Tokens
virtual bool read(Parser &P, ogdf::Graph &G, GraphAttributes *GA, ClusterGraph *C, ClusterGraphAttributes *CA, const SubgraphData &data) override
Tokens::const_iterator Iterator
Parser(std::istream &in)
Initializes parser class with given input (but does nothing to it).
CompassPt(const Type ¶mType)
virtual bool read(Parser &P, ogdf::Graph &G, GraphAttributes *GA, ClusterGraph *C, ClusterGraphAttributes *CA, const SubgraphData &data)=0
SubgraphData withDefaults(std::vector< Ast::AttrList * > &newNodeDefaults, std::vector< Ast::AttrList * > &newEdgeDefaults) const
Returns almost the same structure, but with new defaults.
bool readGraph(Graph &G, GraphAttributes *GA, ClusterGraph *C, ClusterGraphAttributes *CA)
A helper structure containing information for recursive graph reading.
Representation of clusters in a clustered graph.
Stores additional attributes of a clustered graph (like layout information).
Subgraph * parseSubgraph(Iterator current, Iterator &rest)
virtual bool read(Parser &P, ogdf::Graph &G, GraphAttributes *GA, ClusterGraph *C, ClusterGraphAttributes *CA, const SubgraphData &data)=0
virtual bool read(Parser &P, ogdf::Graph &G, GraphAttributes *GA, ClusterGraph *C, ClusterGraphAttributes *CA, const SubgraphData &data) override
SubgraphData withCluster(cluster newRootCluster) const
Returns almost the same structure, but with root cluster.
bool build()
Builds the DOT format AST.
NodeStmt * parseNodeStmt(Iterator current, Iterator &rest)
Indexed arrays using hashing for element access.
StmtList(Stmt *headSTMT, StmtList *tailStatementList)
AttrStmt(const Type ¶mType, AttrList *attrList)
Port(std::string *idString, CompassPt *compassPT)
Ast(const Tokens &tokens)
Initializes AST building but does not trigger the process itself.
Data type for general directed graphs (adjacency list representation).
Subgraph(std::string *idString, StmtList *statementList)
AttrList * parseAttrList(Iterator current, Iterator &rest)
HashArray< std::string, node > m_nodeId
Graph * parseGraph(Iterator current, Iterator &rest)
Graph(const bool ¶mStrict, const bool &dir, std::string *idString, StmtList *statementList)
Graph * root() const
Returns the root of the AST (nullptr if none).
Derived class of GraphObserver providing additional functionality to handle clustered graphs.
std::vector< Ast::AttrList * > & edgeDefaults
DOT format abstract syntax tree class, based on official documentation.
NodeId(const std::string &idString, Port *paramPort)
StmtList * parseStmtList(Iterator current, Iterator &rest)
EdgeStmt * parseEdgeStmt(Iterator current, Iterator &rest)
Representation of clustered graphs.
Class for the representation of nodes.
AttrList(AList *headAList, AttrList *tailAttrList)
CompassPt * parseCompassPt(Iterator current, Iterator &rest)
virtual bool read(Parser &P, ogdf::Graph &G, GraphAttributes *GA, ClusterGraph *C, ClusterGraphAttributes *CA, const SubgraphData &data) override
virtual bool read(Parser &P, ogdf::Graph &G, GraphAttributes *GA, ClusterGraph *C, ClusterGraphAttributes *CA, const SubgraphData &data) override
EdgeRhs * parseEdgeRhs(Iterator current, Iterator &rest)
virtual bool read(Parser &P, ogdf::Graph &G, GraphAttributes *GA, ClusterGraph *C, ClusterGraphAttributes *CA, const SubgraphData &data) override