1 #ifndef INFOPROVIDER_H
2 #define INFOPROVIDER_H
3 
4 #include <QString>
5 
6 #include "datinfodbmgr.h"
7 
8 class InfoProvider
9 {
10 public:
11 	explicit InfoProvider();
12 	virtual ~InfoProvider();
13 
14 	enum InfoClass { InfoClassMachine, InfoClassEmu, InfoClassSoft };
15 	QString requestInfo(const QString &, InfoClass);
16 
isMessGameInfo(const QString & id)17 	bool isMessGameInfo(const QString & id) { return datInfoDb()->machineInfoEmulator(id) == "MESS"; }
isMameGameInfo(const QString & id)18 	bool isMameGameInfo(const QString & id) { return datInfoDb()->machineInfoEmulator(id) == "MAME"; }
19 
20 	QString &messWikiToHtml(QString &);
datInfoDb()21 	DatInfoDatabaseManager *datInfoDb() { return m_datInfoDb; }
22 
23 private:
24 	void loadGameInfo();
25 	void loadEmuInfo();
26 	void loadSoftwareInfo();
27 	QString urlSectionRegExp;
28 	DatInfoDatabaseManager *m_datInfoDb;
29 };
30 
31 #endif
32