FMOD_SYSTEM_CALLBACK_TYPE

FMOD Studio API

Firelight Technologies FMOD Studio API

FMOD_SYSTEM_CALLBACK_TYPE

These callback types are used with System::setCallback.

Each callback has commanddata parameters passed as void* unique to the type of callback.
See reference to FMOD_SYSTEM_CALLBACK to determine what they might mean for each type of callback.

Note! Using FMOD_SYSTEM_CALLBACK_DEVICELISTCHANGED (Windows only) will disable any automated device ejection/insertion handling by FMOD. Use this callback to control the behaviour yourself.

Note! Using FMOD_SYSTEM_CALLBACK_DEVICELISTCHANGED (on Mac only) requires the application to be running an event loop which will allow external changes to device list to be detected by FMOD.

Note! The 'system' object pointer will be null for FMOD_SYSTEM_CALLBACK_MEMORYALLOCATIONFAILED callback.

C/C++ Syntax

#define FMOD_SYSTEM_CALLBACK_DEVICELISTCHANGED 0x00000001
#define FMOD_SYSTEM_CALLBACK_DEVICELOST 0x00000002
#define FMOD_SYSTEM_CALLBACK_MEMORYALLOCATIONFAILED 0x00000004
#define FMOD_SYSTEM_CALLBACK_THREADCREATED 0x00000008
#define FMOD_SYSTEM_CALLBACK_BADDSPCONNECTION 0x00000010
#define FMOD_SYSTEM_CALLBACK_PREMIX 0x00000020
#define FMOD_SYSTEM_CALLBACK_POSTMIX 0x00000040
#define FMOD_SYSTEM_CALLBACK_ERROR 0x00000080
#define FMOD_SYSTEM_CALLBACK_MIDMIX 0x00000100
#define FMOD_SYSTEM_CALLBACK_THREADDESTROYED 0x00000200
#define FMOD_SYSTEM_CALLBACK_PREUPDATE 0x00000400
#define FMOD_SYSTEM_CALLBACK_POSTUPDATE 0x00000800
#define FMOD_SYSTEM_CALLBACK_RECORDLISTCHANGED 0x00001000
#define FMOD_SYSTEM_CALLBACK_ALL 0xFFFFFFFF

JavaScript Syntax

FMOD.SYSTEM_CALLBACK_DEVICELISTCHANGED
FMOD.SYSTEM_CALLBACK_DEVICELOST
FMOD.SYSTEM_CALLBACK_MEMORYALLOCATIONFAILED
FMOD.SYSTEM_CALLBACK_THREADCREATED
FMOD.SYSTEM_CALLBACK_BADDSPCONNECTION
FMOD.SYSTEM_CALLBACK_PREMIX
FMOD.SYSTEM_CALLBACK_POSTMIX
FMOD.SYSTEM_CALLBACK_ERROR
FMOD.SYSTEM_CALLBACK_MIDMIX
FMOD.SYSTEM_CALLBACK_THREADDESTROYED
FMOD.SYSTEM_CALLBACK_PREUPDATE
FMOD.SYSTEM_CALLBACK_POSTUPDATE
FMOD.SYSTEM_CALLBACK_RECORDLISTCHANGED
FMOD.SYSTEM_CALLBACK_ALL

Values

FMOD_SYSTEM_CALLBACK_DEVICELISTCHANGED

Called from System::update when the enumerated list of devices has changed.

FMOD_SYSTEM_CALLBACK_DEVICELOST

Called from System::update when an output device has been lost due to control panel parameter changes and FMOD cannot automatically recover.

FMOD_SYSTEM_CALLBACK_MEMORYALLOCATIONFAILED

Called directly when a memory allocation fails somewhere in FMOD. (NOTE - 'system' will be NULL in this callback type.)

FMOD_SYSTEM_CALLBACK_THREADCREATED

Called directly when a thread is created.

FMOD_SYSTEM_CALLBACK_BADDSPCONNECTION

Called when a bad connection was made with DSP::addInput. Usually called from mixer thread because that is where the connections are made.

FMOD_SYSTEM_CALLBACK_PREMIX

Called each tick before a mix update happens.

FMOD_SYSTEM_CALLBACK_POSTMIX

Called each tick after a mix update happens.

FMOD_SYSTEM_CALLBACK_ERROR

Called when each API function returns an error code, including delayed async functions.

FMOD_SYSTEM_CALLBACK_MIDMIX

Called each tick in mix update after clocks have been updated before the main mix occurs.

FMOD_SYSTEM_CALLBACK_THREADDESTROYED

Called directly when a thread is destroyed.

FMOD_SYSTEM_CALLBACK_PREUPDATE

Called at start of System::update function.

FMOD_SYSTEM_CALLBACK_POSTUPDATE

Called at end of System::update function.

FMOD_SYSTEM_CALLBACK_RECORDLISTCHANGED

Called from System::update when the enumerated list of recording devices has changed.

FMOD_SYSTEM_CALLBACK_ALL

Pass this mask to System::setCallback to receive all callback types.

See Also




Version 1.10.03 Built on Feb 1, 2018