aboutsummaryrefslogtreecommitdiff
path: root/doc/documentation/images/structure.dot
diff options
context:
space:
mode:
Diffstat (limited to 'doc/documentation/images/structure.dot')
-rw-r--r--doc/documentation/images/structure.dot124
1 files changed, 124 insertions, 0 deletions
diff --git a/doc/documentation/images/structure.dot b/doc/documentation/images/structure.dot
new file mode 100644
index 000000000..a53db90b8
--- /dev/null
+++ b/doc/documentation/images/structure.dot
@@ -0,0 +1,124 @@
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
11digraph dependencies {
12splines = 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}