forked from MattRix/UnityDecompiled
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathAudioMixerEffectController.cs
More file actions
126 lines (126 loc) · 4.32 KB
/
Copy pathAudioMixerEffectController.cs
File metadata and controls
126 lines (126 loc) · 4.32 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
using System;
using System.Collections.Generic;
using System.Runtime.CompilerServices;
using UnityEngine;
namespace UnityEditor.Audio
{
internal sealed class AudioMixerEffectController : UnityEngine.Object
{
private int m_LastCachedGroupDisplayNameID;
private string m_DisplayName;
public extern GUID effectID
{
[WrapperlessIcall]
[MethodImpl(MethodImplOptions.InternalCall)]
get;
}
public extern string effectName
{
[WrapperlessIcall]
[MethodImpl(MethodImplOptions.InternalCall)]
get;
}
public extern AudioMixerEffectController sendTarget
{
[WrapperlessIcall]
[MethodImpl(MethodImplOptions.InternalCall)]
get;
[WrapperlessIcall]
[MethodImpl(MethodImplOptions.InternalCall)]
set;
}
public extern bool enableWetMix
{
[WrapperlessIcall]
[MethodImpl(MethodImplOptions.InternalCall)]
get;
[WrapperlessIcall]
[MethodImpl(MethodImplOptions.InternalCall)]
set;
}
public extern bool bypass
{
[WrapperlessIcall]
[MethodImpl(MethodImplOptions.InternalCall)]
get;
[WrapperlessIcall]
[MethodImpl(MethodImplOptions.InternalCall)]
set;
}
public AudioMixerEffectController(string name)
{
AudioMixerEffectController.Internal_CreateAudioMixerEffectController(this, name);
}
[WrapperlessIcall]
[MethodImpl(MethodImplOptions.InternalCall)]
private static extern void Internal_CreateAudioMixerEffectController(AudioMixerEffectController mono, string name);
public bool IsSend()
{
return this.effectName == "Send";
}
public bool IsReceive()
{
return this.effectName == "Receive";
}
public bool IsDuckVolume()
{
return this.effectName == "Duck Volume";
}
public bool IsAttenuation()
{
return this.effectName == "Attenuation";
}
public bool DisallowsBypass()
{
return this.IsSend() || this.IsReceive() || this.IsDuckVolume() || this.IsAttenuation();
}
public void ClearCachedDisplayName()
{
this.m_DisplayName = null;
}
public string GetDisplayString(Dictionary<AudioMixerEffectController, AudioMixerGroupController> effectMap)
{
AudioMixerGroupController audioMixerGroupController = effectMap[this];
if (audioMixerGroupController.GetInstanceID() != this.m_LastCachedGroupDisplayNameID || this.m_DisplayName == null)
{
this.m_DisplayName = audioMixerGroupController.GetDisplayString() + AudioMixerController.s_GroupEffectDisplaySeperator + AudioMixerController.FixNameForPopupMenu(this.effectName);
this.m_LastCachedGroupDisplayNameID = audioMixerGroupController.GetInstanceID();
}
return this.m_DisplayName;
}
public string GetSendTargetDisplayString(Dictionary<AudioMixerEffectController, AudioMixerGroupController> effectMap)
{
return (!(this.sendTarget != null)) ? string.Empty : this.sendTarget.GetDisplayString(effectMap);
}
[WrapperlessIcall]
[MethodImpl(MethodImplOptions.InternalCall)]
public extern void PreallocateGUIDs();
[WrapperlessIcall]
[MethodImpl(MethodImplOptions.InternalCall)]
public extern GUID GetGUIDForMixLevel();
[WrapperlessIcall]
[MethodImpl(MethodImplOptions.InternalCall)]
public extern float GetValueForMixLevel(AudioMixerController controller, AudioMixerSnapshotController snapshot);
[WrapperlessIcall]
[MethodImpl(MethodImplOptions.InternalCall)]
public extern void SetValueForMixLevel(AudioMixerController controller, AudioMixerSnapshotController snapshot, float value);
[WrapperlessIcall]
[MethodImpl(MethodImplOptions.InternalCall)]
public extern GUID GetGUIDForParameter(string parameterName);
[WrapperlessIcall]
[MethodImpl(MethodImplOptions.InternalCall)]
public extern float GetValueForParameter(AudioMixerController controller, AudioMixerSnapshotController snapshot, string parameterName);
[WrapperlessIcall]
[MethodImpl(MethodImplOptions.InternalCall)]
public extern void SetValueForParameter(AudioMixerController controller, AudioMixerSnapshotController snapshot, string parameterName, float value);
[WrapperlessIcall]
[MethodImpl(MethodImplOptions.InternalCall)]
public extern bool GetFloatBuffer(AudioMixerController controller, string name, out float[] data, int numsamples);
[WrapperlessIcall]
[MethodImpl(MethodImplOptions.InternalCall)]
public extern float GetCPUUsage(AudioMixerController controller);
[WrapperlessIcall]
[MethodImpl(MethodImplOptions.InternalCall)]
public extern bool ContainsParameterGUID(GUID guid);
}
}