5 #ifndef PIPEWIRE_EXT_PROFILER_H 
    6 #define PIPEWIRE_EXT_PROFILER_H 
   22 #define PW_TYPE_INTERFACE_Profiler              PW_TYPE_INFO_INTERFACE_BASE "Profiler" 
   24 #define PW_VERSION_PROFILER                     3 
   27 #define PW_EXTENSION_MODULE_PROFILER            PIPEWIRE_MODULE_PREFIX "module-profiler" 
   29 #define PW_PROFILER_EVENT_PROFILE               0 
   30 #define PW_PROFILER_EVENT_NUM                   1 
   34 #define PW_VERSION_PROFILER_EVENTS              0 
   40 #define PW_PROFILER_METHOD_ADD_LISTENER         0 
   41 #define PW_PROFILER_METHOD_NUM                  1 
   45 #define PW_VERSION_PROFILER_METHODS             0 
   54 #define pw_profiler_method(o,method,version,...)                        \ 
   56         int _res = -ENOTSUP;                                            \ 
   57         spa_interface_call_res((struct spa_interface*)o,                \ 
   58                         struct pw_profiler_methods, _res,               \ 
   59                         method, version, ##__VA_ARGS__);                \ 
   63 #define pw_profiler_add_listener(c,...)         pw_profiler_method(c,add_listener,0,__VA_ARGS__) 
   65 #define PW_KEY_PROFILER_NAME            "profiler.name" 
Profiler events
Definition: src/pipewire/extensions/profiler.h:43
uint32_t version
Definition: src/pipewire/extensions/profiler.h:46
void(* profile)(void *data, const struct spa_pod *pod)
Definition: src/pipewire/extensions/profiler.h:48
Profiler methods
Definition: src/pipewire/extensions/profiler.h:57
int(* add_listener)(void *object, struct spa_hook *listener, const struct pw_profiler_events *events, void *data)
Definition: src/pipewire/extensions/profiler.h:62
A hook, contains the structure with functions and the data passed to the functions.
Definition: hook.h:331