Files
Rennbahn/result.h

58 lines
1.3 KiB
C++

#ifndef RESULT_H
#define RESULT_H
#include "database.h"
#include "resultmodel.h"
#include <QWidget>
#include <memory>
#include <string>
#include <vector>
using std::string;
using std::vector;
namespace Ui {
class Result;
}
struct Times {
int shell;
int dea;
};
class Result : public QWidget {
Q_OBJECT
public:
explicit Result(DataBase * db, int rennid, QWidget * parent = nullptr);
~Result();
public slots:
void closeWindow();
private:
vector<int> getFahrerIds(int rennid);
vector<int> getAutoIds(int rennid);
int getMinimum(int fahrerId, int bahnId, int rennId, int autoid,
int minZeit);
float getMean(int fahrerid, int bahnid, int rennid);
string getFahrerName(int id);
string getAutoName(int id);
string myRound(double, int);
template <typename T> double meanVal(vector<T> vec);
template <typename T> T myMin(vector<T> vec);
void plotCars(vector<string> carNames, vector<struct Times> times);
void plotDrivers(vector<string> driverNames, vector<struct Times> times);
double getMinRangeTime(vector<struct Times> times);
double getMaxRangeTime(vector<struct Times> times);
void drawPlots(int rennid);
Ui::Result * ui;
std::shared_ptr<ResultModel> model;
DataBase * db;
int rennid;
int minimumTime;
QString renndatum;
};
#endif // RESULT_H