Removed unnecessary updating to database if no object
[emufront] / src / dataobjects / setup.h
1 // EmuFront
2 // Copyright 2010 Mikko Keinänen
3 //
4 // This file is part of EmuFront.
5 //
6 //
7 // EmuFront is free software: you can redistribute it and/or modify
8 // it under the terms of the GNU General Public License version 2 as published by
9 // the Free Software Foundation and appearing in the file gpl.txt included in the
10 // packaging of this file.
11 //
12 // EmuFront is distributed in the hope that it will be useful,
13 // but WITHOUT ANY WARRANTY; without even the implied warranty of
14 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15 // GNU General Public License for more details.
16 //
17 // You should have received a copy of the GNU General Public License
18 // along with EmuFront.  If not, see <http://www.gnu.org/licenses/>.
19
20 #ifndef SETUP_H
21 #define SETUP_H
22 #include <QStringList>
23 #include "emufrontobject.h"
24
25 class Platform;
26 class MediaType;
27
28 class Setup : public EmuFrontObject
29 {
30 public:
31     Setup();
32     ~Setup();
33     Setup(int id, Platform *, MediaType *, QStringList fileTypeExtensions);
34     Setup(const Setup &);
35     Setup& operator=(const Setup &);
36     // TODO:
37     //bool operator==(const Setup &);
38     //bool operator!=(const Setup &);
39     Platform* getPlatform() const;
40     MediaType* getMediaType() const;
41     QStringList getSupportedFileTypeExtensions() const;
42     void setPlatform(Platform *);
43     void setMediaType(MediaType *);
44     void setSupportedFileTypeExtensions(QStringList);
45
46
47 private:
48     Platform *platform;
49     MediaType *mediaType;
50     // QStringList is implicitly shared.
51     QStringList fileTypeExtensions;
52 };
53
54 #endif // SETUP_H