Exemplo n.º 1
0
  analysis::DDACEAlgorithm DDACEAlgorithmRecord_Impl::ddaceAlgorithm() const {
    analysis::DDACEAlgorithmOptions opts(m_algorithmType, options());
    OptionalFileReference restartFile, outFile;
    OptionalFileReferenceRecord ofr = restartFileReferenceRecord();
    if (ofr) {
      restartFile = ofr->fileReference();
    }
    ofr = outFileReferenceRecord();
    if (ofr) {
      outFile = ofr->fileReference();
    }

    boost::optional<runmanager::Job> job;
    if (this->jobUUID()){
      try {
        job = this->projectDatabase().runManager().getJob(this->jobUUID().get());
      }
      catch (const std::exception& e) {
        LOG(Error, "Job " << toString(this->jobUUID().get()) << " not found in RunManager. "
            << e.what());
      }
    }

    return analysis::DDACEAlgorithm(handle(),
                                    uuidLast(),
                                    displayName(),
                                    description(),
                                    complete(),
                                    failed(),
                                    iter(),
                                    opts,
                                    restartFile,
                                    outFile,
                                    job);
  }
Exemplo n.º 2
0
 std::vector<ObjectRecord> DakotaAlgorithmRecord_Impl::children() const {
   ObjectRecordVector result = AlgorithmRecord_Impl::children();
   if (OptionalFileReferenceRecord restartFile = restartFileReferenceRecord()) {
     result.push_back(*restartFile);
   }
   if (OptionalFileReferenceRecord outFile = outFileReferenceRecord()) {
     result.push_back(*outFile);
   }
   return result;
 }
Exemplo n.º 3
0
 void DakotaAlgorithmRecord_Impl::reset() {
   if (m_dakotaRestartFileRecordId) {
     FileReferenceRecord restartFile = restartFileReferenceRecord().get();
     m_dakotaRestartFileRecordId.reset();
     projectDatabase().removeRecord(restartFile);
   }
   if (m_dakotaOutFileRecordId) {
     FileReferenceRecord outFile = outFileReferenceRecord().get();
     m_dakotaOutFileRecordId.reset();
     projectDatabase().removeRecord(outFile);
   }
   m_jobUUID.reset();
   AlgorithmRecord_Impl::reset(); // calls onChange
 }