博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Rocket - diplomacy - NodeImp
阅读量:5840 次
发布时间:2019-06-18

本文共 1170 字,大约阅读时间需要 3 分钟。

 
介绍NodeImp相关基础类的实现。
 
 
1. 类图
 
 
节点实现(NodeImp)的基础类主要有:
a. InwardNodeImp:内向节点实现;
b. OutwardNodeImp: 外向节点实现;
c. NodeImp:节点实现,同时混入了InwardNodeImp和OutwardNodeImp;
d. SimpleNodeImp:简单节点实现;
 
 
2. InwardNodeImp
 
内向节点实现,其定义如下:
 
a. edgeI: 把DI和UI参数转变为一个EI,即Edge的类型;
b. bundleI:把Edge(EI)转变为一个Bundle类型(BI);
c. monitor:目前没有使用;
d. render:定义如何渲染Edge(EI)的逻辑,比如确定颜色(colour);
e. mixI:从UI到UI,把node的信息加入到UI参数中;
 
 
3. OutwardNodeImp
 
外向节点实现,其定义如下:
a. edgeO:把DO和UO参数转变为一个EO,即Edge类型;
b. bundleO:把Edge(EO)转变为一个与下游节点连接的实际Bundle类型(BO);
c. mixO:从DO到DO,把node的信息加入到DO参数中;
d. getI:目前没有使用;
 
 
4. NodeImp
 
节点实现,其定义如下:
a. 同时混入InwardNodeImp和OutwardNodeImp,意味着既是内向节点实现,也是外向节点实现;
b. 把DI/DO, UI/UO, BI/BO统一为D,U,B类型;
c. EI/EO仍然是分开的;
 
 
5. SimpleNodeImp
 
简单节点实现,其定义如下:
 
相较于NodeImp,这里把EI/EO也统一为E。
 
并且提供了初步的实现:
a. 把edgeI/edgeO都通过调用edge()实现,因为EI/EO都是E;
b. 把bundleI/bundleO都通过bundle()实现,因为BI/BO都是B;
 
 
6. 实例:AXI4Imp
 
 
1) AXI4Imp继承自SimpleNodeImp,所以只有一组D/U/E/B参数,没有再进一步对其做I/O区分;即:
 
D: AXI4MasterPortParameters
U: AXI4SlavePortParameters
E: AXI4EdgeParameters
B: AXI4Bundle
 
2) edge()实现:根据D/U和参数p,生成一个Edge:
其中包含一个bundle成员变量;
 
3) bundle()实现:根据Edge的信息,返回一个AXIBundle:
 
4) 实现mixI()/mixO():把node加入到nodePath中;

转载于:https://www.cnblogs.com/wjcdx/p/10440504.html

你可能感兴趣的文章
ul下的li浮动,如何是ul有li的高度
查看>>
C++ primer plus
查看>>
python mysqlDB
查看>>
UVALive 3942 Remember the Word Tire+DP
查看>>
从微软的DBML文件中我们能学到什么(它告诉了我们什么是微软的重中之重)~目录...
查看>>
被需求搞的一塌糊涂,怎么办?
查看>>
c_数据结构_队的实现
查看>>
jquery 选择器总结
查看>>
Qt设置背景图片
查看>>
【阿里云文档】常用文档整理
查看>>
java中的Volatile关键字
查看>>
前端自定义图标
查看>>
实验二
查看>>
独立开发一个云(PaaS)的核心要素, Go, Go, Go!!!
查看>>
网站文章如何能自动判定是抄袭?一种算法和实践架构剖析
查看>>
【OpenCV学习】滚动条
查看>>
ofo用科技引领行业进入4.0时代 用户粘性连续8个月远甩摩拜
查看>>
兰州青年志愿者“中西合璧”玩快闪 温暖旅客回家路
查看>>
计划10年建10万廉价屋 新西兰政府:比想象中难
查看>>
甘肃发首版《3D打印职业教育教材》:校企合作育专才
查看>>