Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(335)

Unified Diff: net/docs/pools.dot

Issue 1859793002: Include class relationship diagrams in network stack documentation. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: net/docs/pools.dot
diff --git a/net/docs/pools.dot b/net/docs/pools.dot
new file mode 100644
index 0000000000000000000000000000000000000000..8568bb9d0fbbb03db7137cd546ca4d336e8e7969
--- /dev/null
+++ b/net/docs/pools.dot
@@ -0,0 +1,109 @@
+digraph SocketPools {
eroman 2016/04/04 21:29:18 does this need a liscence header at the top?
Randy Smith (Not in Mondays) 2016/04/04 21:44:50 Probably. I'll put it on my todo list, for when I
+subgraph cluster_legend {
+ label="legend";
+ a;
+ factory;
+ derived_class;
+ pure_ABC [style=dotted];
+ mixed_ABC [style=dashed];
+ template_class [shape=diamond]; # Link will name parameter(s)
+
+ whole;
+
+ whole -> referenced_part # Raw pointer
+ [dir=back, arrowhead=none, arrowtail=odiamond];
+
+ whole -> owned_part # Member of scoped_ptr<>
+ [dir=back, arrowhead=none, arrowtail=diamond];
+
+ whole -> reference_counted_semi_owned_part
+ [dir=back, arrowhead=none, arrowtail=diamond, color=red];
+
+ derived_class -> base_class
+ [dir=both, arrowhead=empty, arrowtail=none];
+
+ derived_class -> pure_ABC
+ [dir=both, arrowhead=empty, arrowtail=none, style=dashed];
+
+ # May want to put inside rank=same subgraph.
+ factory -> generated_object [arrowhead=veevee, weight=0];
+
+ a -> b [headlabel="0..*", taillabel="1..*",
+ label="associated with",
+ arrowhead="none"];
+
+
+};
+
+
+
+ ConnectJob [style=dashed];
+ ConnectJob_Delegate [style=dotted, label="ConnectJob::Delegate"];
+ ClientSocketPoolBaseHelper;
+
+ ClientSocketPoolBase [shape=diamond];
+ HigherLayeredPool [style=dotted];
+ LowerLayeredPool [style=dotted];
+ ClientSocketPool [style=dotted];
+ TransportSocketParams; # RC
+ TransportConnectJobHelper;
+ TransportConnectJob;
+ ClientSocketPoolBaseHelper_ConnectJobFactory
+ [style=dotted, label="ClientSocketPoolBaseHelper::\nConnectJobFactory"];
+ ClientSocketPoolBase_ConnectJobFactory
+ [style=dotted, shape=diamond,
+ label="ClientSocketPoolBase::\nConnectJobFactory"];
+ TransportConnectJobFactory;
+ ClientSocketPoolBase_ConnectJobFactoryAdaptor
+ [shape=diamond,
+ label="ClientSocketPoolBase::\nConnectJobFactoryAdaptor"];
+
+ ClientSocketPoolBase_ConnectJobFactoryAdaptor ->
+ ClientSocketPoolBaseHelper_ConnectJobFactory
+ [dir=both, arrowhead=empty, arrowtail=none];
+
+ ClientSocketPoolBase_ConnectJobFactoryAdaptor ->
+ ClientSocketPoolBase_ConnectJobFactory
+ [dir=back, arrowhead=none, arrowtail=diamond];
+
+ TransportConnectJobFactory -> ClientSocketPoolBase_ConnectJobFactory
+ [dir=both, arrowhead=empty, arrowtail=none,
+ label="TransportSocketParams"]
+
+ TransportConnectJob -> ConnectJob
+ [dir=both, arrowhead=empty, arrowtail=none];
+
+ ClientSocketPoolBaseHelper -> ConnectJob_Delegate
+ [arrowtail=none, arrowhead=empty, dir=both];
+ ClientSocketPool -> LowerLayeredPool
+ [arrowtail=none, arrowhead=empty, dir=both];
+
+ ClientSocketPoolBaseHelper -> HigherLayeredPool
+ [dir=back, arrowhead=none, arrowtail=odiamond, headlabel="*"];
+ ClientSocketPoolBaseHelper -> LowerLayeredPool
+ [dir=back, arrowhead=none, arrowtail=odiamond, headlabel="*"];
+ ClientSocketPoolBaseHelper -> ClientSocketPoolBaseHelper_ConnectJobFactory
+ [dir=back, arrowhead=none, arrowtail=diamond];
+ ClientSocketPoolBase -> ClientSocketPoolBaseHelper
+ [dir=back, arrowhead=none, arrowtail=diamond];
+
+ TransportConnectJobHelper -> TransportSocketParams
+ [dir=back, arrowhead=none, arrowtail=diamond, color=red];
+
+ TransportConnectJob -> TransportConnectJobHelper
+ [dir=back, arrowhead=none, arrowtail=diamond];
+
+ TransportClientSocketPool -> ClientSocketPool
+ [dir=both, arrowhead=empty, arrowtail=none];
+
+ TransportClientSocketPool -> ClientSocketPoolBase
+ [dir=back, arrowhead=none, arrowtail=diamond,
+ label="TransportSocketParams"];
+ ClientSocketPoolBaseHelper_ConnectJobFactory -> ConnectJob [arrowhead=veevee];
+ ClientSocketPoolBase_ConnectJobFactory -> ConnectJob [arrowhead=veevee];
+
+ ConnectJob -> ConnectJob_Delegate
+ [dir=back, arrowhead=none, arrowtail=odiamond];
+
+}
+

Powered by Google App Engine
This is Rietveld 408576698