Cockatrice 2026-01-14-Development-2.11.0-beta.46
A cross-platform virtual tabletop for multiplayer card games
Loading...
Searching...
No Matches
cockatrice_xml_3.h
Go to the documentation of this file.
1#ifndef COCKATRICE_XML3_H
2#define COCKATRICE_XML3_H
3
5
6#include <QLoggingCategory>
7#include <QXmlStreamReader>
8
9inline Q_LOGGING_CATEGORY(CockatriceXml3Log, "cockatrice_xml.xml_3_parser");
10
26{
27 Q_OBJECT
28public:
30 ~CockatriceXml3Parser() override = default;
31
38 bool getCanParseFile(const QString &name, QIODevice &device) override;
39
44 void parseFile(QIODevice &device) override;
45
49 bool saveToFile(FormatRulesNameMap _formats,
50 SetNameMap _sets,
51 CardNameMap cards,
52 const QString &fileName,
53 const QString &sourceUrl = "unknown",
54 const QString &sourceVersion = "unknown") override;
55
56private:
62 void loadCardsFromXml(QXmlStreamReader &xml);
63
69 void loadSetsFromXml(QXmlStreamReader &xml);
70
76 QString getMainCardType(QString &type);
77};
78
79#endif
QHash< QString, FormatRulesPtr > FormatRulesNameMap
Definition card_info.h:31
QHash< QString, CardSetPtr > SetNameMap
Definition card_info.h:30
QHash< QString, CardInfoPtr > CardNameMap
Definition card_info.h:29
~CockatriceXml3Parser() override=default
QString getMainCardType(QString &type)
Extracts the main card type from a full type string.
Definition cockatrice_xml_3.cpp:119
bool getCanParseFile(const QString &name, QIODevice &device) override
Determines if the parser can handle this file.
Definition cockatrice_xml_3.cpp:22
void loadCardsFromXml(QXmlStreamReader &xml)
Load all <card> elements from the XML stream.
Definition cockatrice_xml_3.cpp:157
CockatriceXml3Parser(ICardSetPriorityController *cardSetPriorityController)
Definition cockatrice_xml_3.cpp:17
void parseFile(QIODevice &device) override
Parse the XML database.
Definition cockatrice_xml_3.cpp:53
bool saveToFile(FormatRulesNameMap _formats, SetNameMap _sets, CardNameMap cards, const QString &fileName, const QString &sourceUrl="unknown", const QString &sourceVersion="unknown") override
Save sets and cards back to an XML3 file.
Definition cockatrice_xml_3.cpp:446
void loadSetsFromXml(QXmlStreamReader &xml)
Load all <set> elements from the XML stream.
Definition cockatrice_xml_3.cpp:82
ICardSetPriorityController * cardSetPriorityController
Definition card_database_parser.h:63
ICardDatabaseParser(ICardSetPriorityController *cardSetPriorityController)
Definition card_database_parser.cpp:7
Definition interface_card_set_priority_controller.h:7
Q_LOGGING_CATEGORY(CockatriceXml3Log, "cockatrice_xml.xml_3_parser")