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


C++ typenamevector::setMetaValue方法代码示例

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


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

示例1: switchScores_

  void switchScores_(IDType& id, Size& counter)
  {
    for (typename vector<typename IDType::HitType>::iterator hit_it = id.getHits().begin();
         hit_it != id.getHits().end(); ++hit_it, ++counter)
    {
      if (!hit_it->metaValueExists(new_score_))
      {
        String msg = "Meta value '" + new_score_ + "' not found for " + 
          describeHit_(*hit_it);
        throw Exception::MissingInformation(__FILE__, __LINE__,
                                            __PRETTY_FUNCTION__, msg);
      }

      String old_score_meta = (old_score_.empty() ? id.getScoreType() : 
                               old_score_);
      DataValue dv = hit_it->getMetaValue(old_score_meta);
      if (!dv.isEmpty()) // meta value for old score already exists
      {
        if (fabs((double(dv) - hit_it->getScore()) * 2.0 /
                 (double(dv) + hit_it->getScore())) > tolerance_)
        {
          String msg = "Meta value '" + old_score_meta + "' already exists "
            "with a conflicting value for " + describeHit_(*hit_it);
          throw Exception::InvalidValue(__FILE__, __LINE__, __PRETTY_FUNCTION__,
                                        msg, dv.toString());
        } // else: values match, nothing to do
      }
      else
      {
        hit_it->setMetaValue(old_score_meta, hit_it->getScore());
      }
      hit_it->setScore(hit_it->getMetaValue(new_score_));
    }
    id.setScoreType(new_score_type_);
    id.setHigherScoreBetter(higher_better_);
  }
开发者ID:chahuistle,项目名称:OpenMS,代码行数:36,代码来源:IDScoreSwitcher.cpp


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