The biggest issue with the HUD controller right now is how it handles, or rather does not handle, reconnecting to the display after the controller restarts. Since it is completely stateless, it does not "remember" the display configuration, and thus does not know how to connect to the display or what its monitor configuration is when it first starts. If the display is already running the the controller starts up, it will not receive the request to initialize the display until the display reboots. To resolve this, the HUD controller needs to be able to load the display configuration and initialize the display any time it starts up. As such, the `HUDService` class now attempts to load the state from a JSON file in its startup hook. If the file is available and valid, and specifies the address and port of the display host, the controller will open the Marionette connection. If the file also contains valid list of monitors, the display will be initialized. The URL list is now also read from the same configuration file, so as to avoid having to manage multiple files. |
||
---|---|---|
.. | ||
.vscode | ||
src/hudctrl | ||
.flake8 | ||
.gitattributes | ||
.gitignore | ||
.pylintrc | ||
poetry.lock | ||
pyproject.toml |