smichajlidis / queuing-system

Queue Management System using SFML for efficient customer flow.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Queue Management System with SFML

This project is a queue management system simulator developed using the SFML library. The system allows users to define queues, stations, and manage the flow of customers through the system. The simulator provides a graphical interface with windows for each station, a ticket printing kiosk, and a centralized screen displaying the status of all queues and stations.

Features

  • Queue Creation: Users can specify the number of queues needed and assign a topic and signature (single letter) to each queue.

  • Station Setup: Users can define the number of stations and associate specific queues with each station.

  • Graphical Interface: The system generates windows for each station, a ticket printing kiosk, and a centralized screen displaying the current status of all queues and stations.

  • Ticket Handling: Stations have buttons for calling a ticket (green) and confirming the customer's presence (blue). The ticket on display alternates between being illuminated and blinking until confirmation.

Getting Started

  1. Requirements: Ensure you have SFML installed. You can download it here.

  2. Clone the repository:

    git clone https://github.com/smichajlidis/queuing-system.git
    cd queuing-system
  3. Build using CMake:

    mkdir build
    cd build
    cmake ..
  4. Compile the project:

    make
  5. Run the simulator:

    ./queuing-system

Usage Instructions

  1. Queue Creation:

    • Enter the number of queues needed.
    • For each queue, provide a topic and a one-letter signature.
  2. Station Setup:

    • Specify the number of stations.
    • Associate specific queues with each station.
  3. Graphical Interface:

    • Observe the generated windows for each station, the ticket printing kiosk, and the centralized screen.
  4. Ticket Handling:

    • At each station, use the green button to call a ticket and the blue button to confirm the customer's presence.

Presentation Video

Contributing

Contributions are welcome! Feel free to open issues, submit pull requests, or suggest improvements.

About

Queue Management System using SFML for efficient customer flow.


Languages

Language:C++ 97.8%Language:CMake 2.2%