25 #ifndef PIPEWIRE_FACTORY_H 
   26 #define PIPEWIRE_FACTORY_H 
   48 #define PW_TYPE_INTERFACE_Factory       PW_TYPE_INFO_INTERFACE_BASE "Factory" 
   50 #define PW_VERSION_FACTORY              3 
   59 #define PW_FACTORY_CHANGE_MASK_PROPS    (1 << 0) 
   60 #define PW_FACTORY_CHANGE_MASK_ALL      ((1 << 1)-1) 
   75 #define PW_FACTORY_EVENT_INFO           0 
   76 #define PW_FACTORY_EVENT_NUM            1 
   80 #define PW_VERSION_FACTORY_EVENTS       0 
   90 #define PW_FACTORY_METHOD_ADD_LISTENER  0 
   91 #define PW_FACTORY_METHOD_NUM           1 
   95 #define PW_VERSION_FACTORY_METHODS      0 
  104 #define pw_factory_method(o,method,version,...)                         \ 
  106         int _res = -ENOTSUP;                                            \ 
  107         spa_interface_call_res((struct spa_interface*)o,                \ 
  108                         struct pw_factory_methods, _res,                \ 
  109                         method, version, ##__VA_ARGS__);                \ 
  113 #define pw_factory_add_listener(c,...)  pw_factory_method(c,add_listener,0,__VA_ARGS__) 
struct pw_factory_info * pw_factory_info_merge(struct pw_factory_info *info, const struct pw_factory_info *update, bool reset)
Definition: introspect.c:327
 
struct pw_factory_info * pw_factory_info_update(struct pw_factory_info *info, const struct pw_factory_info *update)
Definition: introspect.c:356
 
void pw_factory_info_free(struct pw_factory_info *info)
Definition: introspect.c:363
 
Factory events.
Definition: factory.h:90
 
uint32_t version
Definition: factory.h:93
 
void(* info)(void *data, const struct pw_factory_info *info)
Notify factory info.
Definition: factory.h:99
 
The factory information.
Definition: factory.h:61
 
uint32_t version
version of the objects
Definition: factory.h:65
 
const char * type
type of the objects created by this factory
Definition: factory.h:64
 
uint32_t id
id of the global
Definition: factory.h:62
 
uint64_t change_mask
bitfield of changed fields since last call
Definition: factory.h:70
 
Factory methods.
Definition: factory.h:108
 
uint32_t version
Definition: factory.h:111
 
int(* add_listener)(void *object, struct spa_hook *listener, const struct pw_factory_events *events, void *data)
Definition: factory.h:113
 
A hook, contains the structure with functions and the data passed to the functions.
Definition: hook.h:351