当前位置: 首页>>代码示例>>C++>>正文


C++ plFileName::Normalize方法代码示例

本文整理汇总了C++中plFileName::Normalize方法的典型用法代码示例。如果您正苦于以下问题:C++ plFileName::Normalize方法的具体用法?C++ plFileName::Normalize怎么用?C++ plFileName::Normalize使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在plFileName的用法示例。


在下文中一共展示了plFileName::Normalize方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: hsAssert

std::vector<plFileName> plStreamSource::GetListOfNames(const plFileName& dir, const plString& ext)
{
    plFileName sDir = dir.Normalize('/');
    hsAssert(ext.CharAt(0) != '.', "Don't add a dot");
    std::lock_guard<std::mutex> lock(fMutex);

    // loop through all the file data records, and create the list
    std::vector<plFileName> retVal;
    for (auto curData = fFileData.begin(); curData != fFileData.end(); curData++)
    {
        if ((curData->second.fDir.AsString().CompareI(sDir.AsString()) == 0) &&
            (curData->second.fExt.CompareI(ext) == 0))
            retVal.push_back(curData->second.fFilename);
    }

#ifndef PLASMA_EXTERNAL_RELEASE
    // in internal releases, we can use on-disk files if they exist
    // Build the search string as "dir/*.ext"
    std::vector<plFileName> files = plFileSystem::ListDir(sDir, ("*." + ext).c_str());
    for (auto iter = files.begin(); iter != files.end(); ++iter)
    {
        plFileName norm = iter->Normalize('/');
        if (fFileData.find(norm) == fFileData.end()) // we haven't added it yet
            retVal.push_back(norm);
    }
#endif // PLASMA_EXTERNAL_RELEASE

    return retVal;
}
开发者ID:Drakesinger,项目名称:Plasma,代码行数:29,代码来源:plStreamSource.cpp

示例2: InsertFile

bool plStreamSource::InsertFile(const plFileName& filename, hsStream* stream)
{
    plFileName sFilename = filename.Normalize('/');

    std::lock_guard<std::mutex> lock(fMutex);
    if (fFileData.find(sFilename) != fFileData.end())
        return false; // duplicate entry, return failure

    // copy the data over (takes ownership of the stream!)
    fFileData[sFilename].fFilename = sFilename;
    fFileData[sFilename].fDir = sFilename.StripFileName();
    fFileData[sFilename].fExt = sFilename.GetFileExt();
    fFileData[sFilename].fStream = stream;

    return true;
}
开发者ID:Drakesinger,项目名称:Plasma,代码行数:16,代码来源:plStreamSource.cpp


注:本文中的plFileName::Normalize方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。