https://mp.weixin.qq.com/s/Tmc_oHBQk8eYgKjjsMDn0g
总体介绍diplomacy实现节点(Node)使用的三种类。
0. DAG中的Node
diplomacy为了实现节点的功能,主要使用了三种类:
a. NodeImp:节点实现;
b. NodeHandle:节点句柄(把手、引用);
c. Node:节点;
能看出各自代表什么吗?不能,慢慢来。
1. NodeImp
节点实现(NodeImp)的基础类主要有:
a. InwardNodeImp:内向节点实现;
b. OutwardNodeImp: 外向节点实现;
c. NodeImp:节点实现,同时混入了InwardNodeImp和OutwardNodeImp;
d. SimpleNodeImp:简单节点实现;
简单在哪里?InwardNodeImp和OutwardNodeImp使用同一套D/U/E/B类型参数。
两个实例:
2. NodeHandle
节点句柄(NodeHandle)的基础类主要有:
a. NoHandle:顶层类(其实为trait,);
b. InwardNodeHandle:内向节点句柄;
c. OutwardNodeHandle:外向节点句柄;
d. NodeHandle:节点句柄,包含内向节点句柄和外形节点句柄;
e. NodeHandlePair:节点句柄对;
3. Node
节点(Node)相关的基础类如下:
a. BaseNode:基本节点;
b. InwardNode:内向节点;
c. OutwardNode:外向节点;
d. MixedNode:混合节点,包含内向节点、外向节点、节点句柄(包含内向节点句柄、外向节点句柄);
e. SourceNode:上游节点;上游是相对而言,因为继承自MixedNode,也可以作为下游;
f. SinkNode:下游节点;下游是相对而言,因为继承自MixedNode,也可以作为上游;
g. AdapterNode:适配节点;两个节点接口不匹配无法直接连接,使用适配器中转;
4. MixedNode
5. NodeBinding
上下游节点之间的连接关系:一对一、一对多、多对一、多对多;
6. 提取关键词
a. Upward/Downward
向上和向下主要指参数信息的流向。牵涉到两个节点。
b. Inward/Outward
内向和外向主要指连接的方向,一般针对一个节点而言,指节点被连接以及发出连接的部分。
c. inward/outward
主要用于指代节点(Node);
d. inner/outer
主要用于指代节点实现(NodeImp);