MCPcopy Create free account
hub / github.com/OpenMS/OpenMS / run

Method run

src/openms_gui/source/VISUAL/TOPPASToolVertex.cpp:446–666  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

444 }
445
446 void TOPPASToolVertex::run()
447 {
448 __DEBUG_BEGIN_METHOD__
449
450 //check if everything ready (there might be more than one upstream node - ALL need to be ready)
451 if (!isUpstreamFinished())
452 {
453 return;
454 }
455
456 if (finished_)
457 {
458 OPENMS_LOG_ERROR << "This should not happen. Calling an already finished node '" << this->name_ << "' (#" << this->getTopoNr() << ")!" << std::endl;
459 throw Exception::IllegalSelfOperation(__FILE__, __LINE__, OPENMS_PRETTY_FUNCTION);
460 }
461 TOPPASScene* ts = getScene_();
462
463 QString ini_file = ts->getTempDir()
464 + QDir::separator()
465 + getOutputDir().toQString()
466 + QDir::separator()
467 + name_.toQString();
468 if (!type_.empty())
469 {
470 ini_file += "_" + type_.toQString();
471 }
472 // do not write the ini yet - we might need to alter it
473
474 RoundPackages pkg;
475 String error_msg("");
476 bool success = buildRoundPackages(pkg, error_msg);
477 if (!success)
478 {
479 OPENMS_LOG_ERROR << "Could not retrieve input files from upstream nodes...\n";
480 emit toolFailed(error_msg.toQString());
481 return;
482 }
483
484 // all inputs are ready --> GO!
485 if (!updateCurrentOutputFileNames(pkg, error_msg)) // based on input, we prepare output names
486 {
487 emit toolFailed(error_msg.toQString());
488 return;
489 }
490
491 createDirs();
492
493 //emit toolStarted(); //disabled! Every signal emitted here does only mean the process is queued(!) not that its executed right away
494
495 /// update round status
496 round_total_ = (int) pkg.size(); // take number of rounds from previous tool(s) - should all be equal
497 round_counter_ = 0; // once round_counter_ reaches round_total_, we are done
498
499 QStringList shared_args;
500 if (!type_.empty())
501 {
502 shared_args << "-type" << type_.toQString();
503 }

Callers 1

executionFinishedMethod · 0.45

Calls 15

numberFunction · 0.85
TOPPProcessClass · 0.85
getTopoNrMethod · 0.80
getTargetInParamMethod · 0.80
isDryRunMethod · 0.80
logTOPPOutputMethod · 0.80
enqueueProcessMethod · 0.80
runNextProcessMethod · 0.80
StringClass · 0.50
toQStringMethod · 0.45
emptyMethod · 0.45
sizeMethod · 0.45

Tested by

no test coverage detected