|
Parking Garage Control System
ESP32 Parking Garage – ESP-IDF/FreeRTOS
|
Thread-safe ticket service implementation. More...
#include <TicketService.h>


Public Member Functions | |
| TicketService (uint32_t capacity) | |
| Construct ticket service. | |
| ~TicketService () override | |
| TicketService (const TicketService &)=delete | |
| TicketService & | operator= (const TicketService &)=delete |
| uint32_t | getNewTicket () override |
| Create new ticket. | |
| bool | payTicket (uint32_t ticketId) override |
| Mark ticket as paid. | |
| bool | validateAndUseTicket (uint32_t ticketId) override |
| Validate ticket is paid and mark as used (for exit) | |
| bool | getTicketInfo (uint32_t ticketId, Ticket &ticket) const override |
| Get ticket information. | |
| uint32_t | getActiveTicketCount () const override |
| Get number of active (not used) tickets. | |
| uint32_t | getCapacity () const override |
| Get maximum parking capacity. | |
| void | reset () override |
| Reset ticket service to initial state Clears all tickets and resets ID counter to 1. | |
| void | setCapacity (uint32_t capacity) override |
| Set parking capacity. | |
Public Member Functions inherited from ITicketService | |
| virtual | ~ITicketService ()=default |
Thread-safe ticket service implementation.
Uses FreeRTOS mutex for thread-safety. Stores tickets in memory (no persistence).
|
explicit |
Construct ticket service.
| capacity | Maximum parking capacity |
|
override |
|
delete |
|
overridevirtual |
Get number of active (not used) tickets.
Implements ITicketService.
|
overridevirtual |
|
overridevirtual |
|
overridevirtual |
Get ticket information.
| ticketId | Ticket ID |
| ticket | Output ticket structure |
Implements ITicketService.
|
delete |
|
overridevirtual |
Mark ticket as paid.
| ticketId | Ticket ID to pay |
Implements ITicketService.
|
overridevirtual |
Reset ticket service to initial state Clears all tickets and resets ID counter to 1.
Implements ITicketService.
|
overridevirtual |
|
overridevirtual |
Validate ticket is paid and mark as used (for exit)
| ticketId | Ticket ID to validate |
Implements ITicketService.