31#ifndef DATABASEMANAGER_H
32#define DATABASEMANAGER_H
35#include <QSqlDatabase>
40#include "TestSessionData.h"
134 bool insertTrial(
int sessionId,
const QString& correctResponse,
const QString& userResponse,
int responseTime);
231 void closeDatabase();
239 bool executeQuery(
const QString& query);
247 bool executeQuery(QSqlQuery& query);
The DatabaseManager class manages the database operations for the audio testing application.
Definition: DatabaseManager.h:50
QVector< SessionTrial > getTrialsForSession(int sessionId)
Retrieves all trials for a specific session from the database.
Definition: DatabaseManager.cpp:259
bool insertTrial(int sessionId, const QString &correctResponse, const QString &userResponse, int responseTime)
Inserts a new trial record into the database.
Definition: DatabaseManager.cpp:244
QMap< QString, QMap< QString, int > > getConfusionMatrixCountsForSession(int sessionId)
Get confusion matrix counts for a specific session.
Definition: DatabaseManager.cpp:357
QList< TestSessionData > returnExportDataForSession(int sessionId)
Returns the export data for a specific test session.
Definition: DatabaseManager.cpp:420
double getAverageDurationPerSession()
Gets the average duration per session.
Definition: DatabaseManager.cpp:321
int createTestSession(int sampleId, int trialsCount)
Creates a new test session record in the database.
Definition: DatabaseManager.cpp:187
double getAverageResponseTimePerTrial()
Gets the average response time per trial.
Definition: DatabaseManager.cpp:301
bool insertAudioFile(const QString &path, const QString &fileName)
Inserts an audio file record into the database.
Definition: DatabaseManager.cpp:132
QVector< TestingSession > getSessionsWithDuration()
Retrieves all test sessions along with their durations from the database.
Definition: DatabaseManager.cpp:218
QList< AudioSample > getAudioFiles()
Retrieves all audio files from the database.
Definition: DatabaseManager.cpp:156
double getAverageTrialsPerSession()
Gets the average number of trials per session.
Definition: DatabaseManager.cpp:287
QList< TestSessionData > returnExportDataForAllSessions()
Returns the export data for all test sessions.
Definition: DatabaseManager.cpp:385
bool updateTestSessionEndTime(int sessionId)
Updates the end time of a test session record in the database.
Definition: DatabaseManager.cpp:205
void dropAndRecreateTables()
Drops all tables and recreates them. All data is lost.
Definition: DatabaseManager.cpp:119
bool clearAudioFiles()
Deletes all audio files from the database.
Definition: DatabaseManager.cpp:179
bool setupDatabase()
Sets up the database. Opens the connection and creates necessary tables.
Definition: DatabaseManager.cpp:78
double getAverageSuccessPerSession()
Gets the average success per session.
Definition: DatabaseManager.cpp:335
~DatabaseManager()
Destroys the DatabaseManager object and cleans up.
Definition: DatabaseManager.cpp:43