阅读:1183回复:3
testcap中的capvideo.c文件里的函数是怎么被调用的?
DDK的testcap例子中capmain.c 中的多数函数在AdapterReceivePacket()函数中有入口,但却找不到
capvideo.c文件中的函数的入口在哪里!如当stream class driver 发送SRB_READ_DATA 请求时,minidriver怎么知道该执行 VideoReceiveDataPacket()函数呢?是通过什么方式确定SRB_READ_DATA 和VideoReceiveDataPacket()的关系的? |
|
|
沙发#
发布于:2004-04-20 11:28
1、仔细看看 capstrm.h 中 有关流的定义
static ALL_STREAM_INFO Streams [] = 里面定义了每个流的接受数据及控制的回调例程 ReceiveDataPacket; // receive data packet routine ReceiveControlPacket;// receive control packet routine 比如 STREAM_Capture 流的这两个函数是 |
|
|
板凳#
发布于:2004-04-20 11:33
对不起,刚才还没有写完
比如 STREAM_Capture 流的这两个函数是 VideoReceiveDataPacket, VideoReceiveCtrlPacket, 这就是 capvideo.c 的入口。 2、两者的关系也就是由上面说的确定的。 我们定义了流的数据包处理回调例程,当有 有关这个流的数据包时自然由系统(这里是流stream.sys)来调用我们指定的回调例程的。对于控制包也一样。 |
|
|
地板#
发布于:2004-04-21 09:20
多谢大老指点!!!
|
|
|