Question: 1. Create a class called JobQueue that includes the following fields and functionality: Field jobQueue numJobs maxNumJobs Description The field that stores the queue

1. Create a class called JobQueue that includes the following fields and

functionality: Field jobQueue numJobs maxNumJobs Description The field that stores the queue

1. Create a class called JobQueue that includes the following fields and functionality: Field jobQueue numJobs maxNumJobs Description The field that stores the queue or a pointer to the queue containing job IDs The number of jobs in the queue The maximum number of jobs the queue can have Function Description Decide if you need to use any parameters Constructors Destructors bool isEmpty() const bool isFull() const int getNumJobs () const int getMaxNumJobs () const void print() bool addJob(unsigned int) unsigned int serveJob() void clearQueue() Checks if printer queue is empty Checks if printer queue is full Returns the number of jobs waiting in the queue Returns the maximum possible size of the queue Prints the queue in the order of arrival on the console Adds the job ID to the queue Dequeues the printer queue and returns the job ID Empties the queue You may use your own implementation of a queue http://www.cplusplus.com/reference/queue/queue/ or use the STL queue: 2. Design and implement a class to mimic a list of printers. Each printer should have a status with values as either "busy" or "free". The class should have the following functionalities: Function Parameters/Returns Description getNumPrinters getNumFreePrinters Returns the number of printers in the system Returns the number of "free" printers in the system Sets the printer to status "busy". Throws an error if the printer is already "busy". Sets the printer to status "free". Throws an error if the printer is already "free". usePrinter Parameter: Printer index/pointer freePrinter Parameter: Printer index/pointer You may choose to implement this using any data structure or data type. Clearly state your design decisions and assumptions in a file called PrinterList.pdf. 3. Test the functionality of your printer queue application. Your code should be able to handle the following test case: a. Create a job queue of maximum size 5 b. Create a printer list with 2 printers (e.g., A and B) c. Add job IDs 1 and 2 to the job queue d. Use printer B for dequeued job e. Add jobs 3 and 4 to the job queue f. Use printer A for dequeued job g. Free printer B h. Use printer B for dequeued job

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock

include include using namespace std class JobQueue private que... View full answer

blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Computer Engineering Questions!