Ignore:
Timestamp:
May 5, 2016, 5:14:19 PM (10 years ago)
Author:
Frederik Heber <heber@…>
Children:
35e83a
Parents:
8c076a
git-author:
Frederik Heber <heber@…> (05/05/16 13:54:14)
git-committer:
Frederik Heber <heber@…> (05/05/16 17:14:19)
Message:

FragmentationResultContainer when written and inside QtGui is used in locked mode.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/Actions/FragmentationAction/AnalyseFragmentationResultsAction.cpp

    r8c076a r4a33f6  
    560560
    561561  /// if file is given, parse from file into ResultsContainer
    562   FragmentationResultContainer& container = FragmentationResultContainer::getInstance();
    563   if (!params.resultsfile.get().empty()) {
    564     boost::filesystem::path resultsfile = params.resultsfile.get();
    565     if (boost::filesystem::exists(resultsfile)) {
    566       LOG(1, "INFO: Parsing results from " << resultsfile.string() << ".");
    567       std::ifstream returnstream(resultsfile.string().c_str());
    568       if (returnstream.good()) {
    569         boost::archive::text_iarchive ia(returnstream);
    570         ia >> container;
     562  {
     563    AtomicInstance<FragmentationResultContainer> container = FragmentationResultContainer::getLockedInstance();
     564    if (!params.resultsfile.get().empty()) {
     565      boost::filesystem::path resultsfile = params.resultsfile.get();
     566      if (boost::filesystem::exists(resultsfile)) {
     567        LOG(1, "INFO: Parsing results from " << resultsfile.string() << ".");
     568        std::ifstream returnstream(resultsfile.string().c_str());
     569        if (returnstream.good()) {
     570          boost::archive::text_iarchive ia(returnstream);
     571          ia >> *container;
     572        }
     573      } else {
     574        ELOG(1, "Given file" << resultsfile.string() << " does not exist.");
    571575      }
    572     } else {
    573       ELOG(1, "Given file" << resultsfile.string() << " does not exist.");
    574     }
    575   }
    576 
     576    }
     577  }
    577578  /// get data and keysets from ResultsContainer
     579  const FragmentationResultContainer& container = FragmentationResultContainer::getConstInstance();
    578580  const std::map<JobId_t, MPQCData> &shortrangedata = container.getShortRangeResults();
    579581  const KeySetsContainer &keysets = container.getKeySets();
     
    595597  printReceivedShortResultsPerIndex(shortrangeresults);
    596598  // add summed results to container
    597   container.addShortRangeSummedResults(shortrangeresults.getSummedShortRangeResults());
     599  {
     600    AtomicInstance<FragmentationResultContainer> container = FragmentationResultContainer::getLockedInstance();
     601    (*container).addShortRangeSummedResults(shortrangeresults.getSummedShortRangeResults());
     602  }
    598603
    599604  /// now do we need to calculate the cycle contribution
Note: See TracChangeset for help on using the changeset viewer.