Main parking garage system orchestrator.
More...
#include <ParkingGarageSystem.h>
Main parking garage system orchestrator.
Uses pure Dependency Injection pattern:
- Creates all hardware (Gate, Button, LightBarrier, Motor)
- Creates all services (EventBus, TicketService)
- Injects dependencies into controllers
Ownership hierarchy:
◆ ParkingGarageSystem() [1/2]
Construct parking system.
- Parameters
-
| config | System configuration |
◆ ~ParkingGarageSystem()
| ParkingGarageSystem::~ParkingGarageSystem |
( |
| ) |
|
|
default |
◆ ParkingGarageSystem() [2/2]
◆ getEntryGate()
Get entry gate controller reference.
◆ getEntryGateHardware()
| Gate & ParkingGarageSystem::getEntryGateHardware |
( |
| ) |
|
|
inline |
Get entry gate hardware reference (for console commands)
◆ getEventBus()
| IEventBus & ParkingGarageSystem::getEventBus |
( |
| ) |
|
|
inline |
◆ getExitGate()
Get exit gate controller reference.
◆ getExitGateHardware()
| Gate & ParkingGarageSystem::getExitGateHardware |
( |
| ) |
|
|
inline |
Get exit gate hardware reference (for console commands)
◆ getStatus()
| void ParkingGarageSystem::getStatus |
( |
char * |
buffer, |
|
|
size_t |
bufferSize |
|
) |
| const |
Get system status string.
◆ getTicketService()
Get ticket service reference.
◆ initialize()
| void ParkingGarageSystem::initialize |
( |
| ) |
|
Initialize system and start event processing.
◆ operator=()
◆ reset()
| void ParkingGarageSystem::reset |
( |
| ) |
|
Reset system to initial state Resets all controllers and ticket service to clean state.
The documentation for this class was generated from the following files: