25 #ifndef PIPEWIRE_EXT_METADATA_H 
   26 #define PIPEWIRE_EXT_METADATA_H 
   42 #define PW_TYPE_INTERFACE_Metadata              PW_TYPE_INFO_INTERFACE_BASE "Metadata" 
   44 #define PW_VERSION_METADATA                     3 
   47 #define PW_EXTENSION_MODULE_METADATA            PIPEWIRE_MODULE_PREFIX "module-metadata" 
   49 #define PW_METADATA_EVENT_PROPERTY              0 
   50 #define PW_METADATA_EVENT_NUM                   1 
   54 #define PW_VERSION_METADATA_EVENTS              0 
   64 #define PW_METADATA_METHOD_ADD_LISTENER         0 
   65 #define PW_METADATA_METHOD_SET_PROPERTY         1 
   66 #define PW_METADATA_METHOD_CLEAR                2 
   67 #define PW_METADATA_METHOD_NUM                  3 
   71 #define PW_VERSION_METADATA_METHODS             0 
   89 #define pw_metadata_method(o,method,version,...)                        \ 
   91         int _res = -ENOTSUP;                                            \ 
   92         spa_interface_call_res((struct spa_interface*)o,                \ 
   93                         struct pw_metadata_methods, _res,               \ 
   94                         method, version, ##__VA_ARGS__);                \ 
   98 #define pw_metadata_add_listener(c,...)         pw_metadata_method(c,add_listener,0,__VA_ARGS__) 
   99 #define pw_metadata_set_property(c,...)         pw_metadata_method(c,set_property,0,__VA_ARGS__) 
  100 #define pw_metadata_clear(c)                    pw_metadata_method(c,clear,0) 
  102 #define PW_KEY_METADATA_NAME            "metadata.name" 
A hook, contains the structure with functions and the data passed to the functions.
Definition: hook.h:342