adf
名称空间中下列预定义的对象类可用于定义包串流的连接。
template <int nway> class pktsplit { ... }
template <int nway> class pktmerge { ... }
作用域
类型为 pktsplit<n>
和 pktmerge<n>
的对象可声明为成员变量,其类型为用户定义的 graph 类型(即,位于继承自 graph
的类中)。模板参数 n
必须为编译时常量正整数,表示 n 路拆分或合并程度。这些对象的行为类似于含输入和输出连接的 graph 的普通节点,但仅用于显式包布线。
成员函数
static pktsplit<nway> & create();
static pktmerge<nway> & create();
这些类的静态创建方法与 kernel
创建方法采用相同的工作方式。在模板变量声明中已指定拆分或合并程度。
成员变量
std::vector<port<input>> in;
此变量可提供对节点的逻辑输入的访问。pktsplit
节点仅有一个输入。对于 pktmerge
节点,第 i 个索引表示选择第 i 个输入端口。
std::vector<port<output>> out;
此变量可提供对节点的逻辑输出的访问。pktmerge
节点仅有一个输出。对于 pktsplit
节点,第 i 个索引表示选择第 i 个输出端口。