Here are the classes, structs, unions and interfaces with brief descriptions:
| CBuzzer | A class to control a buzzer connected to a GPIO pin |
| CCameraSensor | |
| CCarsTrafficLightSystem | Implements traffic light control specifically for cars |
| CCheckingSystem | Manages and operates the monitoring system for both pedestrian and vehicle detection |
| CFirestoreLogger | Logger class for sending logs to Google Firestore |
| CLED | Controls an LED connected to a GPIO pin |
| CLogger | Provides a thread-safe logging mechanism that writes messages to a file and Google Firestore |
| CMainSystem | Orchestrates the operations of traffic and pedestrian traffic lights, monitoring systems, and emergency protocols |
| CPedestriansTrafficLightSystem | Manages pedestrian-specific traffic lights |
| CPushButton | Manages the interaction with a physical push button connected to a GPIO pin |
| CSystemInterface | Interface for system control classes |
| CTimer | Timer class for asynchronous execution after a specified delay |
| CTrafficLight | A class to control a traffic light system using LEDs |
| CUltrasonicSensor | Provides functionality for interfacing with an ultrasonic sensor for distance measurement |
| CWarningSystem | Manages a warning system with three LEDs and a buzzer |