ConfigDialog::ConfigDialog(QWidget *parent) : QDialog(parent), ui(new Ui::ConfigDialog) { ui->setupUi(this); this->setWindowFlags(Qt::Dialog|Qt::WindowCloseButtonHint); alreadyChangingData=false; ui->tableView->horizontalHeader()->setMaximumHeight(25); ui->tableView->horizontalHeader()->setSectionsMovable(true); ui->tableView->horizontalHeader()->setSectionResizeMode(QHeaderView::Fixed); ui->tableView->verticalHeader()->setSectionResizeMode(QHeaderView::Fixed); loadProblems(); connect(&model,SIGNAL(dataChanged(QModelIndex,QModelIndex)),this,SLOT(dataChangedEvent(QModelIndex,QModelIndex))); }
Job::Job(const QString & id, const QString & trainingSetJson, const QString & brainJson, const int & brainCount, bool & ok, const Brain::Mode & mode) : QObject(), id(id), problems(), bestBrain(), bestBrainEver(), brains(), brainCount(brainCount), infosToSaveCount(100), lastNratios(QVector<float>(100, 0.0f)), averageRatio(0.0f), lastAverageRatio(0.0f), mutexLastNratios(), mutexAverageRatio(), //bestRatioEver(0), lastNbalances(QVector<float>(100, 0.0f)), averageBalance(0), lastAverageBalance(0), mutexLastNbalances(), mutexAverageBalance(), bestBalanceEver(-10000), lastNError(QVector<float>(100, 0.0f)), averageError(0.0f), lastAverageError(0.0f), mutexLastNError(), mutexAverageError(), bestErrorEver(10000), mutexBestBrain(), mutexBestBrainEver(), mutationFrequency(Util::getLineFromConf("mutationFrequency").toFloat()), mutationFrequencyAuto(Util::getLineFromConf("mutationFrequencyAuto").toInt()), mutationFrequencyUp(Util::getLineFromConf("mutationFrequencyUp").toFloat()), mutationFrequencyDown(Util::getLineFromConf("mutationFrequencyDown").toFloat()), mutationFrequencyMax(Util::getLineFromConf("mutationFrequencyMax").toFloat()), mutationFrequencyMin(Util::getLineFromConf("mutationFrequencyMin").toFloat()), mutationIntensity(Util::getLineFromConf("mutationIntensity").toFloat()), mutationIntensityAuto(Util::getLineFromConf("mutationIntensityAuto").toInt()), mutationIntensityUp(Util::getLineFromConf("mutationIntensityUp").toFloat()), mutationIntensityDown(Util::getLineFromConf("mutationIntensityDown").toFloat()), mutationIntensityMax(Util::getLineFromConf("mutationIntensityMax").toFloat()), mutationIntensityMin(Util::getLineFromConf("mutationIntensityMin").toFloat()), limitDeviation(Util::getLineFromConf("limitDeviation").toFloat()), mode(mode), session(QDateTime::currentDateTime()), evaluationMode(BALANCE) { if(ok) { loadProblems(trainingSetJson, ok); } if(ok) { loadBrains(brainJson, ok); } saveDirectory = Util::getLineFromConf("pathToBrains") + "/" + QString::number(session.date().year()) + "_" + QString::number(session.date().month()) + "_" + QString::number(session.date().day()) + "-" + QString::number(session.time().hour()) + "_" + QString::number(session.time().minute()) + "_" + QString::number(session.time().second()); QDir directory; directory.mkdir(saveDirectory); }