s3eWwiseResult s3eWwiseSoundEngineUnloadBankWithID(s3eWwiseBankID in_bankID, s3eWwiseMemPoolId* out_memPoolId)
{
    IwTrace(WWISE_VERBOSE, ("calling s3eWwise[38] func: s3eWwiseSoundEngineUnloadBankWithID"));

    if (!_extLoad())
        return s3eWwise_NotImplemented;

#ifdef LOADER_CALL_LOCK
    s3eDeviceLoaderCallStart(S3E_TRUE, NULL);
#endif

    s3eWwiseResult ret = g_Ext.m_s3eWwiseSoundEngineUnloadBankWithID(in_bankID, out_memPoolId);

#ifdef LOADER_CALL_LOCK
    s3eDeviceLoaderCallDone(S3E_TRUE, NULL);
#endif

    return ret;
}
s3eWwiseResult s3eWwiseSoundEngineUnloadBankWithID(s3eWwiseBankID in_bankID, s3eWwiseMemPoolId* out_memPoolId)
{
    IwTrace(WWISE_VERBOSE, ("calling s3eWwise[37] func: s3eWwiseSoundEngineUnloadBankWithID"));

    if (!_extLoad())
        return s3eWwise_NotImplemented;

#ifdef __mips
    // For MIPs platform we do not have asm code for stack switching
    // implemented. So we make LoaderCallStart call manually to set GlobalLock
    s3eDeviceLoaderCallStart(S3E_TRUE, NULL);
#endif

    s3eWwiseResult ret = g_Ext.m_s3eWwiseSoundEngineUnloadBankWithID(in_bankID, out_memPoolId);

#ifdef __mips
    s3eDeviceLoaderCallDone(S3E_TRUE, NULL);
#endif

    return ret;
}