(abstract) graph class.
![]() | Graph () |
![]() | ~Graph () |
![]() | AddNode (Node *node) |
![]() | AddEdge (Edge *edge) |
![]() | RemoveNode (Node *node) |
![]() | RemoveEdge (Edge *edge) |
![]() | HasNode (Node *node) |
![]() | HasEdge (Edge *edge) |
![]() | ClearNodes () |
![]() | ClearEdges () |
![]() | CheckConnection (int stype1, int stype2, int edgetype) checks if edge type may connect subject types 1 and 2. |
![]() | IsConnected (Subject *s1, Subject *s2) checks if there is an edge in the graph that connects s1 and s2. |
![]() | IsConnected (Subject *s1, Subject *s2, const string *n) same as above, but edge should also have name n. |
![]() | IsConnected (Subject *s1, Subject *s2, int t) here edge should also be of type t. |
![]() | IsConnected (Subject *s1, Subject *s2, const string *n, int t) combination of the two members above. |
![]() | CompleteSubjects (List<Subject *> *l) add to l all edges which connect the subjects. |
![]() | CompleteSubject (List<Subject *> *l, Subject *s) add to l all edges of which subject s is part. |
![]() | CompleteSubject (List<Subject *> *l, Subject *s1, Subject *s2) add to l all edges which connect subjects s1 and s2. |
![]() | CompleteEdges (List<Subject *> *l) add to l all subjects which are connected by edges already in l. |
![]() | GetConnected (List<Subject *> *l, Subject *s) add to l the subjects that are directly connected to subject s. |
![]() | GetNodes (List<Subject *> *l) add to l all nodes in the graph. |
![]() | GetNodes (List<Subject *> *l, int t) add to l all nodes of type t in the graph. |
![]() | GetNodes (List<Subject *> *l, const string *n) add to l all nodes having name n in the graph. |
![]() | GetNodes (List<Subject *> *l, const string *n, int t) combination of two above members. |
![]() | GetEdges (List<Subject *> *l) add to l all edges in the graph. |
![]() | GetEdges (List<Subject *> *l, int t) add to l all edges of type t in the graph. |
![]() | GetEdges (List<Subject *> *l, const string *n) add to l all edges having name n in the graph. |
![]() | GetEdges (List<Subject *> *l, const string *n, int t) combination of two above members. |
![]() | GetEdgesFrom (List<Subject *> *l, Subject *s) add to l all edges departing from subject s in the graph. |
![]() | GetEdgesFrom (List<Subject *> *l, Subject *s, int t) add to l all edges of type t departing from subject s. |
![]() | GetEdgesFrom (List<Subject *> *l, Subject *s, const string *n) add to l all edges having name n departing from subject s. |
![]() | GetEdgesFrom (List<Subject *> *l, Subject *s, const string *n, int t) combination of two above members. |
![]() | GetEdgesTo (List<Subject *> *l, Subject *s) add to l all edges going to subject s. |
![]() | GetEdgesTo (List<Subject *> *l, Subject *s, int t) add to l all edges of type t going to subject s. |
![]() | GetEdgesTo (List<Subject *> *l, Subject *s, const string *n) add to l all edges having name n going to subject s. |
![]() | GetEdgesTo (List<Subject *> *l, Subject *s, const string *n, int t) combination of the two above members. |
![]() | GetEdges (List<Subject *> *l, Subject *from, Subject *to) add to l all edges between subjects from and to |
![]() | GetEdges (List<Subject *> *l, Subject *from, Subject *to, int t) add to l all edges of type t between subjects from and to |
![]() | GetEdges (List<Subject *> *l, Subject *from, Subject *to, const string *n) combination of the two above members. |
![]() | GetEdges (List<Subject *> *l, Subject *from, Subject *to, const string *n, int t) combination of two above members. |
![]() | CountNodes () return number of nodes in the graph |
![]() | CountNodes (int t) return number of nodes of type t in the graph |
![]() | CountNodes (const string *n) return number of nodes having name n in the graph |
![]() | CountNodes (const string *n, int t) return nr. of nodes of type t, having name n in the graph |
![]() | CountEdges () return number of edges in the graph |
![]() | CountEdges (int t) return number of edges of type t in the graph |
![]() | CountEdges (const string *n) return number of edges having name n in the graph |
![]() | CountEdges (const string *n, int t) return nr. of edges of type t, having name n in the graph |
![]() | CountEdgesFrom (Subject *s) return nr. of edges departing from subject s |
![]() | CountEdgesFrom (Subject *s, int t) return nr. of edges of type t departing from subject s |
![]() | CountEdgesFrom (Subject *s, const string *n) return number of edges having name n departing from subject s |
![]() | CountEdgesFrom (Subject *s, const string *n, int t) return number of edges of type t, having name n, departing from subject s |
![]() | CountEdgesTo (Subject *s) return nr. of edges going to subject s |
![]() | CountEdgesTo (Subject *s, int t) return nr. of edges of type t going to subject s |
![]() | CountEdgesTo (Subject *s, const string *n) return number of edges having name n going to subject s |
![]() | CountEdgesTo (Subject *s, const string *n, int t) return number of edges of type t, having name n going to subject s |
![]() | CountEdges (Subject *s1, Subject *s2) return number of edges between subjects s1 and s2 |
![]() | CountEdges (Subject *s1, Subject *s2, int t) return number of edges of type t between subjects s1 and s2 |
![]() | CountEdges (Subject *s1, Subject *s2, const string *n) return number of edges having name n between subjects s1 and s2 |
![]() | CountEdges (Subject *s1, Subject *s2, const string *n, int t) return number of edges of type t, having name n between subjects s1 and s2 |
![]() | PathExists (Subject *s1, Subject *s2) returns if there is some connected path of graph edges from s1 to s2. |
![]() | PathExists (Subject *s1, Subject *s2, int t) returns if there is some conn. path of graph edges of type t from s1 to s2. |
![]() | UndirectedPathExists (Subject *s1, Subject *s2) return if there's path from s1 to s2. irregardless edge direction. |
![]() | WriteSubjects (OutputFile *f) Writes all nodes and edges to outputfile f. |
![]() | InitConnections () initializes the table containing all allowed connections. |
![]() | SetCounter (int n) some counter can be used |
![]() | GetCounter () |
![]() | SetIndexPrefix (const char *s) some string can be used as index prefix. |
![]() | SetIndexPrefix (const string *s) |
![]() | GetIndexPrefix () const |
![]() | GetIndex (string *s) index string := prefix + counter. |
![]() | GetNextIndex (string *index) assign to index a new unique index |
![]() | CountIndexes (const string *index) return number of nodes in the graph having this index. |
![]() | Max. number of different connected types and edge types. |
![]() | nodeTypes Allowed 'connected' types in graph (depends on type of editor). |
![]() | edgeTypes Allowed edges type in graph (depends on type of editor). |
![]() | connections [MAX_TYPES][MAX_TYPES][MAX_TYPES] matrix to store what types can be connected by what edge types. |
![]() | nodes the graph nodes. |
![]() | edges the graph edges. |
![]() | PathExists (Subject *s1, Subject *s2, int edgetype, bool Directed) used by other PathExists. |
![]() | CountIndex (const string *index, List<Subject *> *l) return number of nodes in l having this index |
(abstract) graph class.
virtual ~Graph()
void AddNode(Node *node)
void AddEdge(Edge *edge)
void RemoveNode(Node *node)
void RemoveEdge(Edge *edge)
bool HasNode(Node *node)
bool HasEdge(Edge *edge)
void ClearNodes()
void ClearEdges()
bool CheckConnection(int stype1, int stype2, int edgetype)
bool IsConnected(Subject *s1, Subject *s2)
bool IsConnected(Subject *s1, Subject *s2, const string *n)
bool IsConnected(Subject *s1, Subject *s2, int t)
bool IsConnected(Subject *s1, Subject *s2, const string *n, int t)
int CompleteSubjects(List<Subject *> *l)
int CompleteSubject(List<Subject *> *l, Subject *s)
int CompleteSubject(List<Subject *> *l, Subject *s1, Subject *s2)
int CompleteEdges(List<Subject *> *l)
int GetConnected(List<Subject *> *l, Subject *s)
int GetNodes(List<Subject *> *l)
int GetNodes(List<Subject *> *l, int t)
int GetNodes(List<Subject *> *l, const string *n)
int GetNodes(List<Subject *> *l, const string *n, int t)
int GetEdges(List<Subject *> *l)
int GetEdges(List<Subject *> *l, int t)
int GetEdges(List<Subject *> *l, const string *n)
int GetEdges(List<Subject *> *l, const string *n, int t)
int GetEdgesFrom(List<Subject *> *l, Subject *s)
int GetEdgesFrom(List<Subject *> *l, Subject *s, int t)
int GetEdgesFrom(List<Subject *> *l, Subject *s, const string *n)
int GetEdgesFrom(List<Subject *> *l, Subject *s, const string *n, int t)
int GetEdgesTo(List<Subject *> *l, Subject *s)
int GetEdgesTo(List<Subject *> *l, Subject *s, int t)
int GetEdgesTo(List<Subject *> *l, Subject *s, const string *n)
int GetEdgesTo(List<Subject *> *l, Subject *s, const string *n, int t)
int GetEdges(List<Subject *> *l, Subject *from, Subject *to)
int GetEdges(List<Subject *> *l, Subject *from, Subject *to, int t)
int GetEdges(List<Subject *> *l, Subject *from, Subject *to, const string *n)
int GetEdges(List<Subject *> *l, Subject *from, Subject *to, const string *n, int t)
int CountNodes()
int CountNodes(int t)
int CountNodes(const string *n)
int CountNodes(const string *n, int t)
int CountEdges()
int CountEdges(int t)
int CountEdges(const string *n)
int CountEdges(const string *n, int t)
int CountEdgesFrom(Subject *s)
int CountEdgesFrom(Subject *s, int t)
int CountEdgesFrom(Subject *s, const string *n)
int CountEdgesFrom(Subject *s, const string *n, int t)
int CountEdgesTo(Subject *s)
int CountEdgesTo(Subject *s, int t)
int CountEdgesTo(Subject *s, const string *n)
int CountEdgesTo(Subject *s, const string *n, int t)
int CountEdges(Subject *s1, Subject *s2)
int CountEdges(Subject *s1, Subject *s2, int t)
int CountEdges(Subject *s1, Subject *s2, const string *n)
int CountEdges(Subject *s1, Subject *s2, const string *n, int t)
bool PathExists(Subject *s1, Subject *s2)
bool PathExists(Subject *s1, Subject *s2, int t)
bool UndirectedPathExists(Subject *s1, Subject *s2)
void WriteSubjects(OutputFile *f)
virtual void InitConnections()
void SetCounter(int n)
int GetCounter()
void SetIndexPrefix(const char *s)
void SetIndexPrefix(const string *s)
const string* GetIndexPrefix() const
void GetIndex(string *s)
virtual void GetNextIndex(string *index)
virtual int CountIndexes(const string *index)
int* nodeTypes
int* edgeTypes
enum
int connections[MAX_TYPES][MAX_TYPES][MAX_TYPES]
List <Node *> * nodes
List <Edge *> * edges
bool PathExists(Subject *s1, Subject *s2, int edgetype, bool Directed)
int CountIndex(const string *index, List<Subject *> *l)
alphabetic index hierarchy of classes
this page has been generated automatically by doc++
(c)opyright by Malte Zöckler, Roland Wunderling
contact: doc++@zib.de