Mercurial > libanimone
view include/animone/player.h @ 24:f1b9adaa41b3
dep/animone: a11y/win32: fix missing ComInterface definition
author | Paper <paper@paper.us.eu.org> |
---|---|
date | Wed, 19 Jun 2024 23:21:19 -0400 |
parents | 973734ebd2be |
children | 60ded877339b |
line wrap: on
line source
#ifndef ANIMONE_ANIMONE_PLAYER_H_ #define ANIMONE_ANIMONE_PLAYER_H_ #include <string> #include <vector> #include <map> namespace animone { enum class ExecutablePlatform { Posix, // Posix platforms that aren't OS X Win32, // Windows Xnu, // OS X Unknown, // ... }; enum class WindowPlatform { Quartz, // OS X Win32, // Windows X11, // X11 Unknown, // ... }; enum class Strategy { WindowTitle, OpenFiles, UiAutomation // unused }; enum class PlayerType { Default, WebBrowser // unused }; struct Player { PlayerType type = PlayerType::Default; std::string name; std::string window_title_format; std::map<WindowPlatform, std::vector<std::string>> windows; std::map<ExecutablePlatform, std::vector<std::string>> executables; std::vector<Strategy> strategies; }; bool ParsePlayersData(const std::string& data, std::vector<Player>& players); bool ParsePlayersFile(const std::string& path, std::vector<Player>& players); } // namespace animone #endif // ANIMONE_ANIMONE_PLAYER_H_