audiodriver.c 749 B

12345678910111213141516171819202122232425262728
  1. #include "precompile.h"
  2. #include "audiodriver.h"
  3. #include "audiolog.h"
  4. #include "audiocontext.h"
  5. void audiodriver_init(audioengine_t *engine, audiodriver_vtbl_t *vtbl, audiodriver_t *drv)
  6. {
  7. drv->engine = engine;
  8. drv->ctx = NULL;
  9. drv->user_data = NULL;
  10. drv->event_handler = NULL;
  11. drv->vtbl = vtbl;
  12. }
  13. void audiodriver_raise_event(audiodriver_t *driver, int evt, int param1, int param2)
  14. {
  15. if (driver->event_handler) {
  16. if ((*driver->event_handler)(driver, driver->user_data, evt, param1, param2))
  17. return;
  18. }
  19. if (driver->ctx) {
  20. apr_status_t status;
  21. status = audiocontext_put_driver_event(driver->ctx, driver, evt, param1, param2);
  22. if (status != APR_SUCCESS) {
  23. audio_log_v(AUDIO_LOG_LEVEL_ERROR,"put driver event failed");
  24. }
  25. }
  26. }