s3eWwiseStreamMgr* s3eWwiseStreamMgrCreate(s3eWwiseStreamMgrSettings* in_settings)
{
    IwTrace(WWISE_VERBOSE, ("calling s3eWwise[3] func: s3eWwiseStreamMgrCreate"));

    if (!_extLoad())
        return NULL;

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

    s3eWwiseStreamMgr* ret = g_Ext.m_s3eWwiseStreamMgrCreate(in_settings);

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

    return ret;
}
s3eWwiseStreamMgr* s3eWwiseStreamMgrCreate(s3eWwiseStreamMgrSettings* in_settings)
{
    IwTrace(WWISE_VERBOSE, ("calling s3eWwise[3] func: s3eWwiseStreamMgrCreate"));

    if (!_extLoad())
        return NULL;

#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

    s3eWwiseStreamMgr* ret = g_Ext.m_s3eWwiseStreamMgrCreate(in_settings);

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

    return ret;
}