doc/documentation split into doc/tutorial and doc/handbook for clarity and to avoid...
[oweals/gnunet.git] / doc / handbook / images / structure.dot
1 // house = application
2 // circle (default) = service
3 // box = daemon
4 // diamond = library
5 // black line = dependency
6 // blue line = extension via plugin
7 // red line = possibly useful
8 // dashed = in planning
9
10 // this is what we have...o
11 digraph dependencies {
12 splines = true;
13
14   voting [shape=house];
15   voting -> consensus;
16   voting -> identity;
17   voting -> cadet;
18   voting -> secretsharing;
19   secretsharing -> consensus;
20
21   fs [shape=house];
22   fs -> dht;
23   fs -> core;
24   fs -> datastore;
25   fs -> cadet;
26   fs -> ats;
27   fs -> block [style=dotted,color=blue];
28   fs -> identity;
29   exit [shape=box];
30   exit -> cadet;
31   exit -> tun;
32   exit -> dnsstub;
33   vpn -> cadet;
34   vpn -> regex;
35   vpn -> tun;
36   pt [shape=house];
37   pt -> cadet;
38   pt -> vpn;
39   pt -> dns;
40   pt -> dnsparser;
41   dns -> tun;
42   dns -> dnsstub;
43   zonemaster [shape=house];
44   zonemaster -> namestore;
45   zonemaster -> dht;
46   gns -> dns;
47   gns -> dht;
48   gns -> block [style=dotted,color=blue];
49   gns -> revocation;
50   gns -> vpn;
51   gns -> dnsparser;
52   gns -> dnsstub;
53   gns -> identity;
54   revocation -> core;
55   revocation -> set;
56   namestore -> identity;
57   namestore -> gnsrecord;
58   dnsparser -> gnsrecord [style=dotted,color=blue];
59   conversation -> gnsrecord [style=dotted,color=blue];
60   gns -> gnsrecord;
61   dht -> core;
62   dht -> nse;
63   dht -> block;
64   dht -> datacache;
65   dht -> peerinfo;
66   dht -> hello;
67   nse -> core;
68   regex -> block [style=dotted,color=blue];
69   block [shape=diamond];
70   datacache [shape=diamond];
71   cadet -> core [weight=2];
72   cadet -> dht;
73   cadet -> block [style=dotted,color=blue];
74   conversation [shape=house];
75   conversation -> cadet;
76   conversation -> gns;
77   conversation -> speaker;
78   conversation -> microphone;
79   speaker [shape=diamond];
80   microphone [shape=diamond];
81   regex -> dht;
82   core -> transport;
83   topology [shape=box];
84   topology -> peerinfo;
85   topology -> transport;
86   topology -> core;
87   topology -> hello;
88   hostlist [shape=box];
89   hostlist -> core;
90   hostlist -> peerinfo;
91   hostlist -> hello;
92   transport -> ats;
93   transport -> hello;
94   transport -> peerinfo;
95   transport -> nat;
96   transport -> fragmentation;
97   consensus -> set;
98   consensus -> cadet;
99   scalarproduct -> set;
100   scalarproduct -> cadet;
101   set -> cadet;
102   peerinfo -> hello;
103   fragmentation [shape=diamond];
104   hello [shape=diamond];
105   nat [shape=diamond];
106   tun [shape=diamond];
107   dnsparser [shape=diamond];
108   dnsstub [shape=diamond];
109
110   secushare [shape=house];
111   multicast;
112   psyc;
113   social -> psyc;
114   social -> gns;
115   psyc -> psycstore;
116   psycstore;
117   social;
118   secushare -> social;
119   psyc -> multicast;
120   multicast -> cadet;
121
122   rps;
123   rps -> core;
124 }