Core in-memory container for card and set data.
More...
#include <card_database.h>
Core in-memory container for card and set data.
Responsible for maintaining CardInfo objects, CardSet objects, and providing access to CardDatabaseQuerier for query operations. Handles addition, removal, and clearing of cards and sets.
◆ CardDatabase()
Constructs a new CardDatabase instance.
- Parameters
-
| parent | QObject parent. |
| prefs | Optional card preference provider. |
| pathProvider | Optional database path provider. |
| setPriorityController | Optional controller for set priority. |
◆ ~CardDatabase()
| CardDatabase::~CardDatabase |
( |
| ) |
|
|
override |
Destructor clears all internal data.
◆ addCard
Adds a card to the database.
- Parameters
-
◆ addSet
Adds a set to the database.
- Parameters
-
◆ cardAdded
Emitted when a new card is added.
◆ cardDatabaseAllNewSetsEnabled
| void CardDatabase::cardDatabaseAllNewSetsEnabled |
( |
| ) |
|
|
signal |
Emitted when all new sets have been enabled.
◆ cardDatabaseEnabledSetsChanged
| void CardDatabase::cardDatabaseEnabledSetsChanged |
( |
| ) |
|
|
signal |
Emitted when enabled sets have changed.
◆ cardDatabaseLoadingFailed
| void CardDatabase::cardDatabaseLoadingFailed |
( |
| ) |
|
|
signal |
Emitted when the card database fails to load.
◆ cardDatabaseLoadingFinished
| void CardDatabase::cardDatabaseLoadingFinished |
( |
| ) |
|
|
signal |
Emitted when the card database has finished loading successfully.
◆ cardDatabaseNewSetsFound
| void CardDatabase::cardDatabaseNewSetsFound |
( |
int | numUnknownSets, |
|
|
QStringList | unknownSetsNames ) |
|
signal |
Emitted when new sets are found.
- Parameters
-
| numUnknownSets | Number of unknown sets. |
| unknownSetsNames | Names of unknown sets. |
◆ cardRemoved
Emitted when a card is removed.
◆ checkUnknownSets()
| void CardDatabase::checkUnknownSets |
( |
| ) |
|
|
private |
Check for sets that are unknown and emit signals if needed.
◆ clear()
| void CardDatabase::clear |
( |
| ) |
|
Clears all cards, sets, and internal state.
◆ enableAllUnknownSets()
| void CardDatabase::enableAllUnknownSets |
( |
| ) |
|
Enables all unknown sets in the database.
◆ getCardList()
| const CardNameMap & CardDatabase::getCardList |
( |
| ) |
const |
|
inlinenodiscard |
Returns the map of cards by name.
◆ getLoadStatus()
Returns the current load status.
◆ getSet()
| CardSetPtr CardDatabase::getSet |
( |
const QString & | setName | ) |
|
Retrieves a set by short name, creating a new one if missing.
- Parameters
-
| setName | Short name of the set. |
- Returns
- Pointer to the CardSet.
◆ getSetList()
Returns a list of all sets in the database.
◆ loadCardDatabases
| void CardDatabase::loadCardDatabases |
( |
| ) |
|
|
slot |
Loads card databases from configured paths.
◆ markAllSetsAsKnown()
| void CardDatabase::markAllSetsAsKnown |
( |
| ) |
|
◆ notifyEnabledSetsChanged()
| void CardDatabase::notifyEnabledSetsChanged |
( |
| ) |
|
Notifies listeners that enabled sets changed.
◆ query()
Returns the querier for performing card lookups.
◆ refreshCachedReverseRelatedCards()
| void CardDatabase::refreshCachedReverseRelatedCards |
( |
| ) |
|
|
private |
Refreshes the cached reverse-related cards for all cards.
◆ removeCard()
Removes a card from the database.
- Parameters
-
| card | Pointer to the card to remove. |
◆ saveCustomTokensToFile
| bool CardDatabase::saveCustomTokensToFile |
( |
| ) |
|
|
slot |
Saves custom tokens to file.
- Returns
- True if successful.
◆ CardDatabaseLoader
◆ CardDatabaseQuerier
◆ addCardMutex
| QBasicMutex * CardDatabase::addCardMutex = new QBasicMutex() |
|
private |
◆ cards
Cards indexed by exact name.
◆ clearDatabaseMutex
| QBasicMutex* CardDatabase::clearDatabaseMutex = new QBasicMutex() |
|
private |
Mutexes for thread safety.
◆ loader
Loader responsible for file discovery and parsing.
◆ loadStatus
Current load status of the database.
◆ querier
Querier for higher-level card lookups.
◆ removeCardMutex
| QBasicMutex * CardDatabase::removeCardMutex = new QBasicMutex() |
|
private |
◆ setPriorityController
Controller to determine set priority when choosing preferred printings.
◆ sets
Sets indexed by short name.
◆ simpleNameCards
Cards indexed by simplified name (normalized)
The documentation for this class was generated from the following files: