コード例 #1
0
ファイル: Modex.cpp プロジェクト: pquentin/lima
void Modex::
initModex(const std::string& configFile,
          MediaId lang)
{
    TimeUtils::updateCurrentTime();
    MODEXLOGINIT;
    LINFO << "InformationExtraction resources initialization" << LENDL;

    XMLConfigurationFileParser configParser(configFile);

    // first, add resources and processors to common resources and processors

    try {
        ModuleConfigurationStructure& resources=LinguisticResources::changeable().getModuleConfiguration(lang);
        ModuleConfigurationStructure& modexResourcesModule=configParser.getModuleConfiguration("Resources");
        // get resources for this language
        map<string,string>& resourcesByLanguage=modexResourcesModule.
                                                getMapAtKeyOfGroupNamed("resourcesByLanguage","resourceList");

        map<string,string>::iterator it=resourcesByLanguage.find(LinguisticData::single().getMediaId(m_language));
        if (it == resourcesByLanguage.end()) {
            LERROR << "no resources for language '"
                   << LinguisticData::single().getMediaId(m_language)
                   << "' in Resources for Modex" << LENDL;
            throw InvalidConfiguration();
        }

        std::string resourcesModule=(*it).second;
        ModuleConfigurationStructure& modexResources=configParser.getModuleConfiguration(resourcesModule);
        addConfiguration(modexResources,resources);
    }
    catch (NoSuchGroup& e) {
        LERROR << "missing param 'resourceList' in Resources for Modex in " << configFile << LENDL;
        throw InvalidConfiguration();
    }
    catch (NoSuchParam& ) {
        LERROR << "missing param 'resourcesByLanguage' in Resources for Modex in " << configFile << LENDL;
        throw InvalidConfiguration();
    }
    catch (NoSuchModule &) {
        LDEBUG << "no module 'Resources' for Modex in " << configFile << LENDL;
        // not mandatory
    }

    try {
        ModuleConfigurationStructure& processors=LinguisticResources::changeable().getModuleConfiguration(lang);
        ModuleConfigurationStructure& modexProcessors=configParser.getModuleConfiguration("Processors");
        addConfiguration(modexProcessors,processors);
    }
    catch (NoSuchModule &) {
        LERROR << "no module 'Processors' for Modex in " << configFile << LENDL;
        throw InvalidConfiguration();
    }

    // init modex
    initModexConfig(configParser);

    LINFO << "Modex initialization finished" << LENDL;
    TimeUtils::logElapsedTime("ModexInit");
}
コード例 #2
0
MSBuildQbsProductProject::MSBuildQbsProductProject(
        const GeneratableProject &project,
        const GeneratableProductData &product,
        const Internal::VisualStudioVersionInfo &versionInfo,
        VisualStudioGenerator *parent)
    : MSBuildTargetProject(project, versionInfo, parent)
{
    Q_ASSERT(project.projects.size() == project.commandLines.size());
    Q_ASSERT(project.projects.size() == product.data.size());

    const int count = std::max(project.projects.size(), product.data.size());

    globalsPropertyGroup()->appendProperty(QStringLiteral("QbsProductName"), product.name());

    MSBuildImport *cppDefaultProps = new MSBuildImport(this);
    cppDefaultProps->setProject(QStringLiteral("$(VCTargetsPath)\\Microsoft.Cpp.Default.props"));

    for (int i = 0; i < count; ++i) {
        addConfiguration(
                    project,
                    project.projects.values().at(i),
                    product.data.values().at(i),
                    project.commandLines.values().at(i));
    }

    MSBuildImport *cppProps = new MSBuildImport(this);
    cppProps->setProject(QStringLiteral("$(VCTargetsPath)\\Microsoft.Cpp.props"));

    for (int i = 0; i < count; ++i)
        addItemDefGroup(project.projects.values().at(i), product.data.values().at(i));

    addFiles(project, product);
}
コード例 #3
0
void WorldConfig::buildAttributeMap(DatabaseResult* result)
{
    Configuration_QueryContainer	attribute;
    uint64							count = result->getRowCount();
    BStringVector					dataElements;

    DataBinding*					mConfigurationBinding;

    mConfigurationBinding = mDatabase->createDataBinding(2);
    mConfigurationBinding->addField(DFT_bstring,offsetof(Configuration_QueryContainer,mKey),64,0);
    mConfigurationBinding->addField(DFT_bstring,offsetof(Configuration_QueryContainer,mValue),128,1);

    //gLogger->log(LogManager::DEBUG,"Adding Attribute Configuration");

    for(uint64 i = 0; i < count; i++)
    {
        result->getNextRow(mConfigurationBinding,(void*)&attribute);
        //gLogger->logCont(LogManager::DEBUG,"Adding Attribute %s: %s ",attribute.mKey.getAnsi(),attribute.mValue.getAnsi());


        if(hasConfiguration(attribute.mKey))
        {
            setConfiguration(attribute.mKey,std::string(attribute.mValue.getAnsi()));
        }
        else
        {
            addConfiguration(attribute.mKey,std::string(attribute.mValue.getAnsi()));
        }
    }

    if (count)
    {
        LOG(INFO) << "Mapped attributes mapped: [" << count << "]";
    }

}