19#ifndef APPORCHESTRATOR_H 
   20#define APPORCHESTRATOR_H 
AppState
Definition AppOrchestrator.h:34
 
This class is for the overall application orchestration to coordinate all the user interactions,...
Definition AppOrchestrator.h:47
 
void _handleReadLocoState()
Show the read loco progress screen until it is read or times out.
Definition AppOrchestrator.cpp:354
 
UserConfirmationInterface * _userConfirmationInterface
Definition AppOrchestrator.h:92
 
void _handleStartupState()
Show the startup screen and wait for user interaction before continuing.
Definition AppOrchestrator.cpp:177
 
void _handleErrorState()
Show any errors on screen and process user interaction to recover.
Definition AppOrchestrator.cpp:291
 
ThrottleScreen * _throttleScreen
Definition AppOrchestrator.h:97
 
void _handleSelectCommandStationState()
Display the CommandStation menu and process user interaction to select one.
Definition AppOrchestrator.cpp:195
 
void _handleSelectActionState()
Show the select action menu and process user interaction to select one.
Definition AppOrchestrator.cpp:272
 
void _handleThrottleState()
Show the throttle screen and process user interaction with the throttle.
Definition AppOrchestrator.cpp:248
 
ProgressScreen * _progressScreen
Definition AppOrchestrator.h:99
 
AppState _currentAppState
Definition AppOrchestrator.h:94
 
void updateThrottleLoco(LocoBroadcast locoBroadcast)
Notify the throttle screen an update has been received for the associated loco.
Definition AppOrchestrator.cpp:165
 
void _handleReceivedReadLoco(int address)
Set throttle to the received loco address when reading, or return to the select screen if failed.
Definition AppOrchestrator.cpp:362
 
void _handleSetTrackPower(Event event)
Set track power according to the provided Event details.
Definition AppOrchestrator.cpp:342
 
void begin()
Anything required to be initiated when the orchestrator starts is called here.
Definition AppOrchestrator.cpp:35
 
void _switchState(AppState appState)
Switch application states.
Definition AppOrchestrator.cpp:300
 
void _handleJoinProgTrack()
Join programming track to main and return to the Select Loco menu.
Definition AppOrchestrator.cpp:337
 
void updateThrottleTrackPower(TrackPower trackPower)
Notify the throttle screen of a track power update.
Definition AppOrchestrator.cpp:171
 
void onEvent(Event &event)
Implementation of the EventListener to respond to subscribed events.
Definition AppOrchestrator.cpp:96
 
ErrorScreen * _errorScreen
Definition AppOrchestrator.h:98
 
StartupScreen * _startupScreen
Definition AppOrchestrator.h:96
 
void _displayMenu(BaseMenu *menu)
Display a menu.
Definition AppOrchestrator.cpp:332
 
void _readLoco()
Send read loco command to CommandStation client and set ReadLoco state for progress.
Definition AppOrchestrator.cpp:347
 
CommandStationClient * _commandStationClient
Definition AppOrchestrator.h:91
 
void _handleSelectLocoState()
Show the loco selection menu and process user interaction to select one.
Definition AppOrchestrator.cpp:229
 
ConnectionManager * _connectionManager
Definition AppOrchestrator.h:89
 
void update()
Call this method at least once per main loop iteration to monitor for user interactions,...
Definition AppOrchestrator.cpp:37
 
MenuManager * _menuManager
Definition AppOrchestrator.h:90
 
void _handleConnectCommandStationState()
Show the connection progress screen until a connection is made.
Definition AppOrchestrator.cpp:213
 
UserSelectionInterface * _userSelectionInterface
Definition AppOrchestrator.h:93
 
DisplayInterface * _displayInterface
Definition AppOrchestrator.h:88
 
void setThrottleLoco(Loco *loco)
Set the loco being managed by the throttle screen.
Definition AppOrchestrator.cpp:158
 
void setupSelectLocoMenu()
Method to setup the roster list in the SelectLocoMenu when the roster has been received.
Definition AppOrchestrator.cpp:147
 
Definition CommandStationClient.h:27
 
Class to manage all WiFi and serial connections used to connect to a CommandStation.
Definition ConnectionManager.h:30
 
Interface class to abstract construction of what is displayed on screen from the physical implementat...
Definition DisplayInterface.h:29
 
Definition ErrorScreen.h:24
 
Class to extend for all other classes that need to respond to events For example: Class <MyClass> : p...
Definition EventListener.h:26
 
Definition ProgressScreen.h:24
 
Class to display startup information on screen and respond to user interactions Displays the DCC-EX S...
Definition StartupScreen.h:27
 
Definition ThrottleScreen.h:26
 
Interface class to abstract user confirmation actions from physical implementations All physical user...
Definition UserConfirmationInterface.h:29
 
Interface class to abstract user selection actions from physical implementations All physical user se...
Definition UserSelectionInterface.h:31
 
Structure for each Event that is published.
Definition EventStructure.h:102
 
Structure for data from a Loco broadcast.
Definition EventStructure.h:42