Task *QDTandemActor::getAlgorithmTask(const QVector<U2Region> &location) { settings.minPeriod = cfg->getParameter(MIN_PERIOD_ATTRIBUTE)->getAttributeValueWithoutScript<int>(); settings.maxPeriod = cfg->getParameter(MAX_PERIOD_ATTRIBUTE)->getAttributeValueWithoutScript<int>(); settings.algo = (TSConstants::TSAlgo)cfg->getParameter(ALGORITHM_ATTRIBUTE)->getAttributeValueWithoutScript<int>(); settings.minTandemSize = cfg->getParameter(MIN_TANDEM_SIZE_ATTRIBUTE)->getAttributeValueWithoutScript<int>(); settings.minRepeatCount = cfg->getParameter(MIN_REPEAT_COUNT_ATTRIBUTE)->getAttributeValueWithoutScript<int>(); settings.showOverlappedTandems = cfg->getParameter(SHOW_OVERLAPPED_TANDEMS_ATTRIBUTE)->getAttributeValueWithoutScript<bool>(); settings.nThreads = cfg->getParameter(N_THREADS_ATTRIBUTE)->getAttributeValueWithoutScript<int>(); const DNASequence& dnaSeq = scheme->getSequence(); Task *task = new Task(tr("TandemQDTask"), TaskFlag_NoRun); foreach(const U2Region &r, location) { FindTandemsTaskSettings localSettings(settings); localSettings.seqRegion = r; TandemFinder *subTask = new TandemFinder(localSettings, dnaSeq); task->addSubTask(subTask); subTasks.append(subTask); }
void SettingsStore::copyDefaultSettings(const QString &fileName, bool overwrite) { // Locate config.ini in standard locations QString settingsFile = QStandardPaths::locate( QStandardPaths::DataLocation, fileName, QStandardPaths::LocateFile); // If couldn't locate config.ini in DataLocation dirs, // search in the binary path. if (settingsFile.isEmpty()) { settingsFile = QDir(QCoreApplication::applicationDirPath()) .filePath(fileName); } // Set final settings path QString localSettingsFile = settings->fileName(); QString localSettingsDir = QFileInfo(localSettingsFile).absolutePath(); // Free settings file delete settings; // Create directory if it doesn't exist QDir dir(localSettingsDir); if (!dir.exists()) { dir.mkpath(localSettingsDir); } // Copy settings if (overwrite == true) { // Remove if already exists QFile localSettings(localSettingsFile); if (localSettings.exists() == true) { localSettings.remove(); } } QFile::copy(settingsFile, localSettingsFile); // Reload settings settings = new QSettings(QSettings::IniFormat, QSettings::UserScope, "visualino", "visualino"); }