public static void UnloadBank(string name) { AkBankHandle akBankHandle = null; if (AkBankManager.m_BankHandles.TryGetValue(name, out akBankHandle)) { akBankHandle.DecRef(); if (akBankHandle.RefCount == 0) { AkBankManager.m_BankHandles.Remove(name); } } }
public static void UnloadBank(string name) { AkBankHandle handle = null; if (m_BankHandles.TryGetValue(name, out handle)) { handle.DecRef(); if (handle.RefCount == 0) { m_BankHandles.Remove(name); } } }
/// Unloads a bank. See AK::SoundEngine::UnloadBank for more information public static void UnloadBank(string name) { m_Mutex.WaitOne(); AkBankHandle handle = null; if (m_BankHandles.TryGetValue(name, out handle)) { handle.DecRef(); if (handle.RefCount == 0) { m_BankHandles.Remove(name); } } m_Mutex.ReleaseMutex(); }
public static void UnloadBank(string name, bool realy = false, int skin = 0) { if (name.Equals("[]")) { return; } if (skin > 0) { if (!AkBankManager.m_BankHandles.ContainsKey(name + skin)) { return; } name += skin; } AkBankManager.m_Mutex.WaitOne(); AkBankHandle akBankHandle = null; if (AkBankManager.m_BankHandles.TryGetValue(name, out akBankHandle)) { if (!realy) { akBankHandle.DecRef(); if (akBankHandle.RefCount == 0) { AkBankManager.m_BankHandles.Remove(name); } } else { akBankHandle.m_RefCount = 0; AkSoundEngine.UnloadBank(akBankHandle.m_BankID, IntPtr.Zero, null, null); AkBankManager.m_BankHandles.Remove(name); } } AkBankManager.m_Mutex.ReleaseMutex(); }