Skip to content

Unofficial Qt/C++ data abstraction layer for Eastside Hockey Manager 1 databases and saved games.

License

Notifications You must be signed in to change notification settings

archibalduk/EHM_DAL

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

EHM DAL: A data abstraction layer for Eastside Hockey Manager 1

GitHub tag GitHub last commit GitHub GitHub top language

EHM DAL is an unofficial data abstraction layer for Eastside Hockey Manger 1 databases and saved games which you can integrate into your own Qt/C++ projects. EHM DAL provides a library of functions which enable an EHM database or saved game to be loaded and parsed without needing to code any of your own file i/o functions or any database structures. Parsing a database or saved game is as simple as integrating the EHM DAL library into your Qt/C++ project and then adding the following code:

// The following code will open and process a database
auto db_manager{ehm_dal::file_io::DatabaseFileManager()};
db_manager.read("C:\\Program Files (x86)\\Steam\\steamapps\\common\\Eastside Hockey Manager\\data\\database\\database.db");

// The following code will open and process a saved game
auto sav_manager{ehm_dal::file_io::SavedGameFileManager()};
sav_manager.read("C:\\Users\\archibalduk\\Documents\\Sports Interactive\\EHM\\games\\Test.sav");

EHM DAL's database table classes inherit from QAbstractTableModel and are therefore compatible Qt's model/view architecture. This means that database tables can be easily assigned to Qt's view widgets such as QTableView.

Data can be accessed using QModelIndex or EHM DAL's Pointer class.

EHM DAL is presently a work in progress and should be considered alpha quality.

Visit the EHM DAL documentation for details of the various classes and functions.

Visit the EHM DAL wiki for guides and tutorials.

Features

  1. Read-only access to the EHM database and saved games;
  2. Access binary data for each saved game table for parsing by the user's own code;
  3. Various search functions for searching and filtering data; and
  4. Export custom spreadsheets to csv or xlsx format.

Limitations

  1. No editing is currently possible (limited editing is planned for a future release);
  2. No access to playable league-related structures; and
  3. Few details of EHM saved game tables are known and will therefore require the user to figure out the structure and implement their own code.

System Requirements

Author

@archibalduk

Credits

EHM DAL uses QXlsx by j2doll. QXlsx is licensed under the MIT license.

License

GNU General Public License v3.0

About

Unofficial Qt/C++ data abstraction layer for Eastside Hockey Manager 1 databases and saved games.

Topics

Resources

License

Stars

Watchers

Forks

Languages