diff options
Diffstat (limited to 'mixlib')
| -rw-r--r-- | mixlib/mix_vm.c | 9 | ||||
| -rw-r--r-- | mixlib/mix_vm.h | 5 | 
2 files changed, 14 insertions, 0 deletions
| diff --git a/mixlib/mix_vm.c b/mixlib/mix_vm.c index 4446bcf..9816cb5 100644 --- a/mixlib/mix_vm.c +++ b/mixlib/mix_vm.c @@ -124,6 +124,15 @@ mix_vm_connect_device (mix_vm_t *vm, mix_device_t *device)    return old;  } +/* get device */ +mix_device_t * +mix_vm_get_device (const mix_vm_t *vm, mix_device_type_t dev) +{ +  g_return_val_if_fail (vm != NULL, NULL); +  g_return_val_if_fail (dev < mix_dev_INVALID, NULL); +  return vm->devices[dev]; +} +  /* install a device factory for automatic connection */  void  mix_vm_set_device_factory (mix_vm_t *vm, mix_device_factory_t factory) diff --git a/mixlib/mix_vm.h b/mixlib/mix_vm.h index c4663bc..a8b826e 100644 --- a/mixlib/mix_vm.h +++ b/mixlib/mix_vm.h @@ -51,6 +51,11 @@ mix_vm_delete(mix_vm_t * vm);  extern mix_device_t * /* previously connected device */  mix_vm_connect_device (mix_vm_t *vm, mix_device_t *device); +/* get device */ +extern mix_device_t * +mix_vm_get_device (const mix_vm_t *vm, mix_device_type_t dev); + +  /* install a device factory for automatic connection */  typedef mix_device_t * (* mix_device_factory_t) (mix_device_type_t device);  extern void | 
