zoukankan      html  css  js  c++  java
  • glibgenmarshal的使用,如何使用自定义的signal函数

    g_closure_marshal提供了一些常用的closure的实现,但是由于返回值和参数列表的可能性实在太多,无法穷举,所以,gobject提供了一个程序:glib-genmarshal来帮我们生成指定的closure的实现(自动生成代码)。
    在当前目录下创建一个文件,比如:marshal.list,包含内容如下:
    VOID:UINT,UINT
    就是返回值和参数列表。然后:
    glib-genmarshal --header --prefix=gst_play_marshal marshal.list
    这样就生成了头文件的内容,保存下来存成gstplay-marshal.h,搞定。
    glib-genmarshal --body --prefix=gst_play_marshal marshal.list
    生成了.c文件的内容,保存成gstplay-marshal.c,搞定。在这个.c的第一行再添加一句:#include "gstplay-marshal.h",这句不会自动生成。
    这样就有了gst_play_marshal_VOID__UINT_UINT这个函数了。
  • 相关阅读:
    测试之美-1
    杯子测试
    性能面试(四)
    性能面试(二)
    性能面试(三)
    性能面试(一)
    解决用户名冲突
    版本冲突
    JQuery Easy UI 简介
    Fork
  • 原文地址:https://www.cnblogs.com/super119/p/1902183.html
Copyright © 2011-2022 走看看