1/* struct::graph - critcl - layer 1 declarations
2 * (b) Node operations.
3 */
4
5#ifndef _G_NODE_H
6#define _G_NODE_H 1
7
8#include "tcl.h"
9#include <ds.h>
10
11void gn_shimmer  (Tcl_Obj* o, GN* n);
12GN*  gn_get_node (G* g, Tcl_Obj* node, Tcl_Interp* interp, Tcl_Obj* graph);
13
14#define gn_shimmer_self(n) \
15    gn_shimmer ((n)->base.name, (n))
16
17GN*  gn_new    (G* g, const char* name);
18GN*  gn_dup    (G* dst, GN* src);
19void gn_delete (GN* n);
20
21void gn_err_duplicate (Tcl_Interp* interp, Tcl_Obj* n, Tcl_Obj* g);
22void gn_err_missing   (Tcl_Interp* interp, Tcl_Obj* n, Tcl_Obj* g);
23
24Tcl_Obj* gn_serial_arcs (GN* n, Tcl_Obj* empty, Tcl_HashTable* cn);
25
26#endif /* _G_NODE_H */
27
28/*
29 * Local Variables:
30 * mode: c
31 * c-basic-offset: 4
32 * fill-column: 78
33 * End:
34 */
35