CLICK element的port设置的学习记录

本文详细解析了在源码中如何通过port_count函数限制端口的输入输出数量,包括使用/和-符号定义输入输出范围的方法,以及处理输入口push请求和输出口pull请求的函数定义,为理解元素端口配置提供了深入的指导。

通过对源码中几个实例的学习

大概总结出了几个针对元素端口的设置方法:

 

首先是.hh文件中的 port_count函数

const char *port_count() const	{ return "1-2/-"; }

这是对端口的输入输出数量做出限制:  

1.  / 左边是输入  ,/ 右边是输出

2. - 符号表示不确定,也是可以是任意的个           1-2 表示 1个到2个 ,是一个范围

 

此外 return还会有另一种形式 ,是这样的:

const char *port_count() const		{ return PORTS_0_1; }

这个表示的是  0个输入  一个输出

 

还有两个端口的处理函数  ,官方文件里写了定义

void push(int i, Packet *);	// process push request on input i
Packet *pull(int i);		// process pull request on output i

一个是处理输入口的push请求,一个是处理输出口的pull请求(因为push和pull两种获取方式发起方的不同,造成了这样的形式)

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值