VAE - Virtual Audio Engine 1
Small Data Driven Audio Engine
|
Contains Typedefinitions and basic structures use by the public API and internally. More...
Namespaces | |
namespace | Config |
namespace | core |
namespace | StaticConfig |
Contains some fundamental Configuration needed at compile time Dynamic settings are contained in the EngineSettings struct above. | |
Classes | |
struct | DeviceInfo |
Basic struct describing a audio device. More... | |
struct | EngineConfig |
Settings for the engine defined at EnginePimpl::init. More... | |
class | EnginePimpl |
Sealed of version of vae::core::Engine. More... | |
struct | EventCallbackData |
Struct containing relevant data passed to EventCallback provided in the EngineConfig. More... | |
struct | LocationDirection |
Emitters have a position and direction vector. More... | |
struct | LocationOrientation |
Listener uses additional up vector. More... | |
struct | Vector3 |
Public vae Vector 3 type. More... | |
Typedefs | |
using | Sample = float |
Default sample types used where ever possible, changing this means the engine needs to be recompiled, short and int isn't working, probably needs a few changes in the pipeline. More... | |
using | Size = unsigned int |
How the elements are addressed in the heapbuffer. More... | |
using | Time = double |
Time sotred in seconds. More... | |
using | SmallHandle = unsigned char |
using | GenericHandle = unsigned short |
using | LargeHandle = unsigned int |
using | BankHandle = SmallHandle |
using | EventHandle = GenericHandle |
The handle used to address events within a bank. More... | |
using | SourceHandle = GenericHandle |
using | EmitterHandle = LargeHandle |
using | MixerHandle = SmallHandle |
using | ListenerHandle = SmallHandle |
using | GlobalEventHandle = LargeHandle |
Used to globally address events, holds space for BankHandle and EventHandle. More... | |
using | GlobalMixerHandle = GenericHandle |
TODO. More... | |
using | GlobalParameterHandle = LargeHandle |
TODO. More... | |
using | EventCallback = void(*)(const EventCallbackData *) |
Enumerations | |
enum class | Result { Success = 0 , GenericFailure , BankFormatError , BankFormatIndexError , BankFormatDuplicateIndex , FileOpenError , VoiceStarvation , BankFormatBadMixHirarchy , ElementNotFound , ValidHandleRequired , TooManyRecords , DeviceError , DuplicateEmitter , InvalidBank , InvalidEmitter } |
Return Types for most engine functions. More... | |
enum class | LogLevel { Debug = 0 , Info , Warn , Error , Ciritical } |
Variables | |
constexpr GenericHandle | InvalidHandle = ~0 |
Since 0 is a valid handle, these are used to identify invalid ones. More... | |
constexpr EventHandle | InvalidEventHandle = ~0 |
constexpr SourceHandle | InvalidSourceHandle = ~0 |
constexpr BankHandle | InvalidBankHandle = ~0 |
constexpr MixerHandle | InvalidMixerHandle = ~0 |
constexpr ListenerHandle | InvalidListenerHandle = ~0 |
constexpr ListenerHandle | AllListeners = (~0) - 1 |
Will address all listeners. More... | |
constexpr EmitterHandle | InvalidEmitterHandle = ~0 |
constexpr GlobalEventHandle | InvalidGlobalEventHandle = InvalidEventHandle | (InvalidBankHandle << (sizeof(EventHandle) * 8)) |
Contains Typedefinitions and basic structures use by the public API and internally.
Forward these to tklb TODO find a better place for this.
The types used internally like handles or static settings can be changed, but vae::EnginePimpl needs to be recompiled.
using vae::BankHandle = typedef SmallHandle |
using vae::EmitterHandle = typedef LargeHandle |
using vae::EventCallback = typedef void(*)(const EventCallbackData*) |
using vae::EventHandle = typedef GenericHandle |
using vae::GenericHandle = typedef unsigned short |
using vae::GlobalEventHandle = typedef LargeHandle |
using vae::GlobalMixerHandle = typedef GenericHandle |
using vae::GlobalParameterHandle = typedef LargeHandle |
using vae::LargeHandle = typedef unsigned int |
using vae::ListenerHandle = typedef SmallHandle |
using vae::MixerHandle = typedef SmallHandle |
using vae::Sample = typedef float |
using vae::Size = typedef unsigned int |
using vae::SmallHandle = typedef unsigned char |
using vae::SourceHandle = typedef GenericHandle |
|
strong |
|
strong |
Return Types for most engine functions.
Enumerator | |
---|---|
Success | :) |
GenericFailure | :( |
BankFormatError | Generic bank loading error. |
BankFormatIndexError | A index is out of bounds. |
BankFormatDuplicateIndex | A index is used muktiple times. |
FileOpenError | File system could not load file. |
VoiceStarvation | Could not play sound because of voice limit. |
BankFormatBadMixHirarchy | A mixer can only write to mixers with lower ids than themselves (no recursion) |
ElementNotFound | Referenced data not found. |
ValidHandleRequired | Handle provided wasn't valid but needs to be. |
TooManyRecords | Can't fit all data in fixed size array. |
DeviceError | Can't open audio device. |
DuplicateEmitter | Trying to register emitter twice. |
InvalidBank | Valid bank handle needed. |
InvalidEmitter | Emitter probably wasn't registered. |
Definition at line 73 of file vae.hpp.
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |