11#ifndef EngageAudioDevice_h
12#define EngageAudioDevice_h
22#if !defined(ENGAGE_API)
26 #define ENGAGE_API __declspec(dllexport) extern
28 #define ENGAGE_API extern
31 #define ENGAGE_API __attribute__ ((visibility ("default")))
static const int ENGAGE_AUDIO_DEVICE_GENERAL_ERROR
A general error occurred.
static const int ENGAGE_AUDIO_DEVICE_INVALID_OPERATION
An invalid operation has been attempted.
static const int ENGAGE_AUDIO_DEVICE_RESULT_OK
Everything is fine.
EngageAudioDeviceCtlOp_t
Audio Device Control Operation enum.
@ eadStart
Start playback.
@ eadResume
Resume playback.
@ eadRestart
Restart an audio device - TODO:Shaun.
@ eadDestroyInstance
Destroy an audio device instance.
@ eadCreateInstance
Create an audio device instance.
@ eadReset
Reset an audio device - TODO:Shaun.
int(* PFN_ENGAGE_AUDIO_DEVICE_CTL)(int16_t deviceId, int16_t instanceId, EngageAudioDeviceCtlOp_t op, uintptr_t p1)
Audio Device Control instance pointer.
ENGAGE_API int16_t engageAudioDeviceWriteBuffer(int16_t deviceId, int16_t instanceId, const int16_t *buffer, size_t samples)
[SYNC] Writes a buffer of audio to the audio device
static const int ENGAGE_AUDIO_DEVICE_INVALID_DEVICE_ID
Invalid deviceId.
static const int ENGAGE_AUDIO_DEVICE_INVALID_COMBINED_DEVICE_ID_AND_INSTANCE_ID
Invalid deviceId and instanceId.
ENGAGE_API int16_t engageAudioDeviceUnregister(int16_t deviceId)
[SYNC] Unregisters a virtual audio device
ENGAGE_API int16_t engageAudioDeviceRegister(const char *jsonConfiguration, PFN_ENGAGE_AUDIO_DEVICE_CTL pfnCtl)
[SYNC] Registers an Audio Device with the Engine
static const int ENGAGE_AUDIO_DEVICE_INVALID_CONFIGURATION
Unable to register device due to invalid configuration.
ENGAGE_API int16_t engageAudioDeviceReadBuffer(int16_t deviceId, int16_t instanceId, int16_t *buffer, size_t samples)
[SYNC] Reads a buffer of audio from the audio device
static const int ENGAGE_AUDIO_DEVICE_INVALID_INSTANCE_ID
Invalid instanceId.