16#define VAE_VERSION_MAJOR 0
17#define VAE_VERSION_MINOR 0
18#define VAE_VERSION_PATCH 1
67 "BankHandle combined with EventHandle needs to fit in GlobalEventHandle"
264 namespace StaticConfig {
constexpr Vector3 right
Used in 7.1 and Headphones.
constexpr Vector3 rearLeft
Sourund setups.
constexpr Vector3 rearRight
Sourund setups.
constexpr Vector3 frontLeft
Stereo and suround setups.
constexpr Vector3 center
Used for mono and souround setups (except quadrophonic)
constexpr Vector3 frontRight
Stereo and suround setups.
constexpr Vector3 left
Used in 7.1 and Headphones.
constexpr Sample MinVolume
Minimum volume before sounds will skip rendering.
constexpr Size MaxListeners
How many listeners can observe 3D voices.
constexpr Size MaxBlock
Maximum block size.
constexpr Size MaxChainedEvents
How many chained events can fit in chain_events on the core::Event structure.
constexpr Size MaxEffectsParameter
constexpr unsigned char MaxChannels
Maximum channel count used to pre allocate buffers.
constexpr Size StreamPrefetch
How many Samples to prefetch for streaming sources.
constexpr Size MaxMixerEffects
How many effects a mixer channel can process.
Contains Typedefinitions and basic structures use by the public API and internally.
constexpr ListenerHandle AllListeners
Will address all listeners.
constexpr EmitterHandle InvalidEmitterHandle
unsigned int Size
How the elements are addressed in the heapbuffer.
unsigned char SmallHandle
unsigned short GenericHandle
float Sample
Default sample types used where ever possible, changing this means the engine needs to be recompiled,...
constexpr GenericHandle InvalidHandle
Since 0 is a valid handle, these are used to identify invalid ones.
constexpr SourceHandle InvalidSourceHandle
LargeHandle GlobalParameterHandle
TODO.
double Time
Time sotred in seconds.
SmallHandle ListenerHandle
constexpr EventHandle InvalidEventHandle
LargeHandle EmitterHandle
constexpr ListenerHandle InvalidListenerHandle
GenericHandle EventHandle
The handle used to address events within a bank.
Result
Return Types for most engine functions.
@ FileOpenError
File system could not load file.
@ BankFormatError
Generic bank loading error.
@ TooManyRecords
Can't fit all data in fixed size array.
@ InvalidBank
Valid bank handle needed.
@ InvalidEmitter
Emitter probably wasn't registered.
@ VoiceStarvation
Could not play sound because of voice limit.
@ ValidHandleRequired
Handle provided wasn't valid but needs to be.
@ ElementNotFound
Referenced data not found.
@ BankFormatDuplicateIndex
A index is used muktiple times.
@ BankFormatBadMixHirarchy
A mixer can only write to mixers with lower ids than themselves (no recursion)
@ DuplicateEmitter
Trying to register emitter twice.
@ DeviceError
Can't open audio device.
@ BankFormatIndexError
A index is out of bounds.
constexpr BankHandle InvalidBankHandle
constexpr GlobalEventHandle InvalidGlobalEventHandle
GenericHandle GlobalMixerHandle
TODO.
GenericHandle SourceHandle
void(*)(const EventCallbackData *) EventCallback
constexpr MixerHandle InvalidMixerHandle
LargeHandle GlobalEventHandle
Used to globally address events, holds space for BankHandle and EventHandle.
Contains generated Event ids using generate_bank_defines.py.
Basic struct describing a audio device.
unsigned int sampleRate
TODO not used?
unsigned int bufferSize
desired bufferSize
unsigned char channelsOut
char name[255]
Device name reported from backend.
int id
Negative values for invalid device.
char api[4]
API abbreviation.
Settings for the engine defined at EnginePimpl::init.
Size finishedVoiceQueueSize
Size of the voice queue for finished voices which need to trigger other events on_end when updating t...
Size voices
Hard limit on concurrent voices, can't be 0 or lower than hrtfVoices.
Size preferredBufferSize
Buffer size that will be requested from device.
void * eventCallbackContext
Custom data that can be accached to the EventCallback to maintain context.
const char * rootPath
Path where the bank files are located, needs to end with a trailing /.
bool updateInAudioThread
If this is true update() does not need to be called on the engine instance.
EventCallback eventCallback
Each time a event of the type emit gets triggered Used to get information about ending sounds and sim...
Size hrtfVoices
Amount of HRTF panned voices audible at any given time.
Size preAllocatedEmitters
How many emitters to allocate upfront.
bool processInBufferSwitch
If enabled, all processing and mixing will happen in the audio callback.
static constexpr Size _preAllocatedEmitters
Size virtualVoices
Hard limit on virtal voices.
Size internalSampleRate
Samplerate requested from device.
Size bufferPeriods
Number of blocks/buffers to processed ahead.
Struct containing relevant data passed to EventCallback provided in the EngineConfig.
void * context
Can point to custom context data also provided when setting the callback, ! not context based on even...
EmitterHandle emitter
Which emitter.
EventHandle event
Which event.
BankHandle bank
Which bank the event is from.
Emitters have a position and direction vector.
Listener uses additional up vector.
Public vae Vector 3 type.