Implements table loading and indexing for ASAPCabinetFE. More...
#include <table_loader.h>
Public Member Functions | |
TableLoader ()=default | |
Constructs a TableLoader instance. | |
std::vector< TableData > | loadTableList (const Settings &settings, LoadingProgress *progress=nullptr) override |
Loads the list of table data based on application settings. | |
const std::map< char, int > & | getLetterIndex () const override |
Retrieves the letter-based index for table navigation. | |
Implements table loading and indexing for ASAPCabinetFE.
This class loads a list of TableData by scanning VPX files, matchmaking metadata from VPSDB or ASAP indexes, and sorting based on user-defined criteria (e.g., title, author). It supports a five-stage process (fetching VPSDB, scanning, matchmaking, saving, sorting) with optional progress tracking via LoadingProgress. The class maintains a letter index for quick navigation and is configurable via Settings parameters, with extensibility for configUI adjustments (e.g., sort options, metadata sources).
|
default |
Constructs a TableLoader instance.
Default constructor initializes the loader with an empty letter index.
|
inlineoverridevirtual |
Retrieves the letter-based index for table navigation.
Returns a map where keys are the first characters (uppercased letters or digits) of table titles, and values are the corresponding indices in the sorted table list.
Implements ITableLoader.
|
overridevirtual |
Loads the list of table data based on application settings.
Executes a multi-stage process to load tables: fetching VPSDB (if enabled), scanning VPX files or loading from an ASAP index, matchmaking metadata, saving the index, and sorting. Progress is tracked via LoadingProgress if provided. The method is configurable via Settings (e.g., titleSource, fetchVPSdb, sortBy).
settings | The application settings controlling the loading process. |
progress | Optional pointer to LoadingProgress for real-time updates. |
Implements ITableLoader.