-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdatabase.h
More file actions
46 lines (40 loc) · 1.19 KB
/
database.h
File metadata and controls
46 lines (40 loc) · 1.19 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
#ifndef DATABASE_H
#define DATABASE_H
#include "bouquet.h"
#include "flour.h"
#include <QVector>
class DataBase;
class DataBaseDestroyer
{
private:
DataBase* p_instance;
public:
~DataBaseDestroyer();
void initialize( DataBase* p );
};
class DataBase
{
private:
static DataBase* p_instance;
static DataBaseDestroyer destroyer;
protected:
friend class DataBaseDestroyer;
DataBase() { }
DataBase( const DataBase& );
DataBase& operator=( DataBase& );
~DataBase() { }
public:
Bouquet* getBouquetFromDb(QString fileName, int id);
Flour* getFlourFromDb(QString fileName, int id);
QList<int> getBouquetsIds(QString fileName);
QList<int> getFloursIds(QString fileName);
void addFlourToFile(Flour newFlour, QString fileName);
void addBouquetToFile(Bouquet newBouqet, QString fileName);
void editBouquetInDb(Bouquet oldBouquet, Bouquet newBouquet, QString fileName);
void editFlourInDb(Flour oldFLour, Flour newFLour, QString fileName);
void deleteBouquetFromDb(Bouquet oddBouquet, QString fileName);
void deleteFlourFromDb(Flour oddFlour, QString fileName);
QString getDbFIleName();
static DataBase& getInstance();
};
#endif // DATABASE_H