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_PERM_MASK                   PW_PERM_R 
   31#define PW_PROFILER_EVENT_PROFILE               0 
   32#define PW_PROFILER_EVENT_NUM                   1 
   36#define PW_VERSION_PROFILER_EVENTS              0 
   42#define PW_PROFILER_METHOD_ADD_LISTENER         0 
   43#define PW_PROFILER_METHOD_NUM                  1 
   47#define PW_VERSION_PROFILER_METHODS             0 
 
   56#define pw_profiler_method(o,method,version,...)                        \ 
   58        int _res = -ENOTSUP;                                            \ 
   59        spa_interface_call_res((struct spa_interface*)o,                \ 
   60                        struct pw_profiler_methods, _res,               \ 
   61                        method, version, ##__VA_ARGS__);                \ 
   65#define pw_profiler_add_listener(c,...)         pw_profiler_method(c,add_listener,0,__VA_ARGS__) 
   67#define PW_KEY_PROFILER_NAME            "profiler.name" 
 
Profiler events
Definition profiler.h:46
uint32_t version
Definition profiler.h:49
void(* profile)(void *data, const struct spa_pod *pod)
Definition profiler.h:51
Profiler methods
Definition profiler.h:60
int(* add_listener)(void *object, struct spa_hook *listener, const struct pw_profiler_events *events, void *data)
Definition profiler.h:65
uint32_t version
Definition profiler.h:63
A hook, contains the structure with functions and the data passed to the functions.
Definition hook.h:350