Files
2026-03-23 14:28:21 +01:00

85 lines
4.0 KiB
C#

#if !(UNITY_QNX) // Disable under unsupported platforms.
//------------------------------------------------------------------------------
// <auto-generated />
//
// This file was automatically generated by SWIG (https://www.swig.org).
// Version 4.4.0
//
// Do not make changes to this file unless you know what you are doing - modify
// the SWIG interface file instead.
//------------------------------------------------------------------------------
/// Structure containing information about system-level support for 3D audio.
/// "3D Audio" refers to a system's ability to position sound sources in a virtual 3D space, pan them accordingly on a range of physical speakers, and produce a binaural mix where appropriate.
/// We prefer "3D Audio" to "Spatial" to avoid ambiguity with spatial audio, which typically involves sound propagation and environment effects.
public class Ak3DAudioSinkCapabilities : global::System.IDisposable {
private global::System.IntPtr swigCPtr;
protected bool swigCMemOwn;
internal Ak3DAudioSinkCapabilities(global::System.IntPtr cPtr, bool cMemoryOwn) {
swigCMemOwn = cMemoryOwn;
swigCPtr = cPtr;
}
internal static global::System.IntPtr getCPtr(Ak3DAudioSinkCapabilities obj) {
return (obj == null) ? global::System.IntPtr.Zero : obj.swigCPtr;
}
internal virtual void setCPtr(global::System.IntPtr cPtr) {
Dispose();
swigCPtr = cPtr;
}
~Ak3DAudioSinkCapabilities() {
Dispose(false);
}
public void Dispose() {
Dispose(true);
global::System.GC.SuppressFinalize(this);
}
protected virtual void Dispose(bool disposing) {
lock(this) {
if (swigCPtr != global::System.IntPtr.Zero) {
if (swigCMemOwn) {
swigCMemOwn = false;
AkUnitySoundEnginePINVOKE.CSharp_delete_Ak3DAudioSinkCapabilities(swigCPtr);
}
swigCPtr = global::System.IntPtr.Zero;
}
global::System.GC.SuppressFinalize(this);
}
}
/// Channel configuration of the main mix.
public AkChannelConfig channelConfig { set { AkUnitySoundEnginePINVOKE.CSharp_Ak3DAudioSinkCapabilities_channelConfig_set(swigCPtr, AkChannelConfig.getCPtr(value)); }
get {
global::System.IntPtr cPtr = AkUnitySoundEnginePINVOKE.CSharp_Ak3DAudioSinkCapabilities_channelConfig_get(swigCPtr);
AkChannelConfig ret = (cPtr == global::System.IntPtr.Zero) ? null : new AkChannelConfig(cPtr, false);
return ret;
}
}
/// Maximum number of System Audio Objects that can be active concurrently. A value of zero indicates the system does not support this feature.
public uint uMaxSystemAudioObjects { set { AkUnitySoundEnginePINVOKE.CSharp_Ak3DAudioSinkCapabilities_uMaxSystemAudioObjects_set(swigCPtr, value); } get { return AkUnitySoundEnginePINVOKE.CSharp_Ak3DAudioSinkCapabilities_uMaxSystemAudioObjects_get(swigCPtr); }
}
/// How many System Audio Objects can currently be sent to the sink. This value can change at runtime depending on what is playing. Can never be higher than uMaxSystemAudioObjects.
public uint uAvailableSystemAudioObjects { set { AkUnitySoundEnginePINVOKE.CSharp_Ak3DAudioSinkCapabilities_uAvailableSystemAudioObjects_set(swigCPtr, value); } get { return AkUnitySoundEnginePINVOKE.CSharp_Ak3DAudioSinkCapabilities_uAvailableSystemAudioObjects_get(swigCPtr); }
}
/// Separate pass-through mix is supported.
public bool bPassthrough { set { AkUnitySoundEnginePINVOKE.CSharp_Ak3DAudioSinkCapabilities_bPassthrough_set(swigCPtr, value); } get { return AkUnitySoundEnginePINVOKE.CSharp_Ak3DAudioSinkCapabilities_bPassthrough_get(swigCPtr); }
}
/// Can handle multi-channel objects
public bool bMultiChannelObjects { set { AkUnitySoundEnginePINVOKE.CSharp_Ak3DAudioSinkCapabilities_bMultiChannelObjects_set(swigCPtr, value); } get { return AkUnitySoundEnginePINVOKE.CSharp_Ak3DAudioSinkCapabilities_bMultiChannelObjects_get(swigCPtr); }
}
public Ak3DAudioSinkCapabilities() : this(AkUnitySoundEnginePINVOKE.CSharp_new_Ak3DAudioSinkCapabilities(), true) {
}
}
#endif // #if !(UNITY_QNX) // Disable under unsupported platforms.