ResourceWeakPtr IResourceManager::GetResource(xst_castring &strName, xst_castring &strGroup)
    {
        ResourcePtr pRes;
        ResourceHandle Handle = XSE_HASH( strName );

        if( strGroup == ALL_GROUPS )
        {
            for( auto& Itr : m_mGroups )
            {
                pRes = Itr.second->GetResource( Handle );
                if( pRes.IsValid() )
                    return pRes;
            }
        }
        else
        {
            GroupWeakPtr pGr = GetGroup( strGroup );
            if( pGr.IsValid() )
            {
                pRes = pGr->GetResource( Handle );
            }
        }

        return pRes;
    }