The app uses a lot of constants which are listed here in no particular order.
The controller size is the size of the controller widgets on larger screens. In !kIsWeb builds, this value is also used to set the minimum window size.
The four current limits are part of the firmware settings. The index of the current value can be read or written as cur_lim at the /settings/ endpoint.
The five DCC BiDi durations are part of the firmware settings. Using the first value (0) BiDi can be switched off. The current value can be read or written as dcc_bidibit_dur at the /settings/ endpoint.
The four DCC programming types are part of the firmware settings. The index of the current value can be read or written as dcc_prog_type at the /settings/ endpoint.
A list of initial CVs for locomotives for use with fake services.
A list of initial CVs for accessories for use with fake services.
This is a global container for providers. Please not that this is bad practice, but we need a common provider container for all fake services. This is the only way we can inject this container to fake services as well as the entire widget tree.
When faking services this container gets injected into runApp.
The KeyCodes class contains constant integer values that are used when controller buttons are pressed. The values have the following scheme:
An icon set with specific OpenRemise icons created using fluttericon.com.
This is the width over which a large screen is assumed. The app changes its layout depending on the screen size. This value is therefore often compared to MediaQuery.of(context).size.width.
turnoutMap maps the type enumeration of turnouts to their assets. This allows the app to display the correct asset for the state based on the turnout positions.
This is the maximum number of WebSocket messages grouped and sent at once.
See also #45.
A (not complete) list of ZIMO MS decoder IDs. This list is used exclusively for fake services.
A list of ZIMO MX decoder IDs.