/**
 * get the effect duration
 */
float BonusInterface::getDuration()
{
    if( duration == DURATION_UNSET)
    {
        duration = generateDuration();
    }
    return duration;
}
Example #2
0
void LogsDialog::setFlightSessions()
{
  ui->sessions_CB->clear();

  int n = csvlog.count();
  // qDebug() << "records" << n;

  // find session breaks
  QList<int> sessions;
  QDateTime lastvalue;
  for (int i = 1; i < n; i++) {
    QDateTime tmp = getRecordTimeStamp(i);
    if (lastvalue.secsTo(tmp) > 60) {
      sessions.push_back(i-1);
      // qDebug() << "session index" << i-1;
    }
    lastvalue = tmp;
  }
  sessions.push_back(n-1);

  //now construct a list of sessions with their times
  //total time
  int noSesions = sessions.size()-1;
  QString label = QString("%1 ").arg(noSesions);
  label += tr(noSesions > 1 ? "sessions" : "session");
  label += " <" + tr("total duration ") + generateDuration(getRecordTimeStamp(1), getRecordTimeStamp(n-1)) + ">";
  ui->sessions_CB->addItem(label);

  // add individual sessions
  if (sessions.size() > 2) {
    for (int i = 1; i < sessions.size(); i++) {
      QDateTime sessionStart = getRecordTimeStamp(sessions.at(i-1)+1);
      QDateTime sessionEnd = getRecordTimeStamp(sessions.at(i));
      QString label = sessionStart.toString("HH:mm:ss") + " <" + tr("duration ") + generateDuration(sessionStart, sessionEnd) + ">";
      ui->sessions_CB->addItem(label, sessions.at(i-1));
      // qDebug() << "added label" << label << sessions.at(i-1);
    }
  }
}