For this project you will use create a hospital triage system using a Priority Queue.
tri·age
1. (in medical use) the assignment of degrees of urgency to wounds or illnesses to decide the order of treatment of a large number of patients or casualties.
"a triage nurse"
Objective: write a console program that will simulate a patient emergency room triage system with a patient queue.
A.Create a menu that will allow a user Triage Nurse) to:
a. add a patient to the queue in its appropriate position based on their triage status (priority)
b.Service the next patient in the queue
c.Print the contents of the queue
B.Patients can have more than one injury or illness the combination of which can change their priority in the queue.
Technical Design:
A.Patients must be represented by a separate class.
B.Patient class will maintain a list of injuries or ailments
C.Your priority queue must use the double linked list we created in class
D.You may implement your priority queue using one or two lists as described in class.
E.All input must be validated
F.You may not use the STL (Standard Template Library)
G.Pointer notation must be used throughout
H.A list of injuries and ailments with their priority will be provided as a comma delimited file.
I.You must read this file as input at the start of your program and store the contents in a Map data structure.
J.You must research the Map data structure and create a PriorityMap class to use for this purpose. A map will allow you to get the priority for a particular injury or ailment.
Rules:
1.Patients can only be in the queue once
2.If a patient has multiple issues their priority can increase based on the following calculation:
3.Priority score = ((type + severity) / time criticality) + contagious
4.If a patient has multiple issues, you must calculate the priority score for each issue and add them together. For combined scores any individual score below a 3 is not added to the patients overall score.
5.For the queue threshold, any combined score below 4 is put into the regular queue
6.All priority calculations must be performed by the program during the patient ADD.
7.Your output should look like the following:
Welcome to the EMERG Triage System
Please make a selection
A Add a new patient to the queue
P Process the next patient in the queue
R Review the current queue
H Print the history of the Queue (Oldest first)
X Exit the system
On adding a patient : accept the new patient information from the Nurse(keyboard)
Patient name
The following for each issue the patient has:
Injury or Illness name or code
Severity
Time criticality
Contagious
Upon entry the system will output the following:
Patient: Andrew Wing add to queue with priority 3 in position 2
On processing a patient
Patient: Andrew Wing moved to patient room
Next patient in queue: Lianne Wong with Priority 2
On viewing the queue:
Bob Smith – priority 4 - heart attack, Ebola
Santa Klaus – priority 3 – flu, boo boo on arm
Andy Wing – priority 3 – kneesels, stubbed toe
Class Diagram: see image.