mirror of
https://github.com/nasa/trick.git
synced 2024-12-19 05:07:54 +00:00
50 lines
2.4 KiB
Plaintext
50 lines
2.4 KiB
Plaintext
/**
|
|
|
|
@page LEVEL3 Scheduled Job Queue Requirements.
|
|
|
|
The ScheduledJobQueue is a helper object to the Scheduler. This object
|
|
keeps an ordered queue of the jobs for a particular job class. The Scheduler adds
|
|
and removes jobs from the queue. The Scheduler asks for the top job of the
|
|
queue, or the next job that has an execution time that matches the current simulation time.
|
|
Finally, the Scheduler asks the ScheduledJobQueue to insert an
|
|
instrumentation job where the job is attached before or after a specific job in the queue,
|
|
or attached before or after all jobs in the simulation.
|
|
|
|
@section LEVEL4 Jobs
|
|
-# Trick shall store an ordered queue of jobs of the same scheduling class. The order shall be
|
|
based on job class, phase number, sim_object order, and finally order of jobs within the simulation object.
|
|
[ @anchor r_exec_time_0 r_exec_time_0 ]
|
|
-# Trick shall provide a method to add simulation objects to the queue.
|
|
[ @anchor r_exec_jobs_2 r_exec_jobs_2 ]
|
|
-# Trick shall provide a method to add simulation objects to the
|
|
queue that ignores the sim_object and job order.
|
|
[ @anchor r_exec_jobs_2 r_exec_jobs_2 ]
|
|
-# Trick shall provide a method to clear the job queue.
|
|
[ @anchor r_exec_jobs_2 r_exec_jobs_2 ]
|
|
-# Trick shall provide a method to get the next job on the list.
|
|
[ @anchor r_exec_jobs_2 r_exec_jobs_2 ]
|
|
-# Trick shall provide a method to search for the next job on the list whose next job call time matches the
|
|
current simulation time.
|
|
[ @anchor r_exec_jobs_2 r_exec_jobs_2 ]
|
|
-# Trick shall provide a method to reset the search index to the top of the list.
|
|
[ @anchor r_exec_jobs_2 r_exec_jobs_2 ]
|
|
|
|
@section LEVEL4 Job Call Time
|
|
-# Trick shall track the lowest next job call time greater than the current call time.
|
|
[ @anchor r_exec_jobs_2 r_exec_jobs_2 ]
|
|
-# Trick shall provide a method to retrieve the next job call time.
|
|
[ @anchor r_exec_jobs_2 r_exec_jobs_2 ]
|
|
|
|
@section LEVEL4 Instrumentation Jobs
|
|
-# Trick shall provide a method to insert a job before each job in the queue.
|
|
[ @anchor r_exec_instrument_0 r_exec_instrument_0 ]
|
|
-# Trick shall provide a method to insert a job before a single job in the queue.
|
|
[ @anchor r_exec_instrument_1 r_exec_instrument_1 ]
|
|
-# Trick shall provide a method to insert a job after each job in the queue.
|
|
[ @anchor r_exec_instrument_2 r_exec_instrument_2 ]
|
|
-# Trick shall provide a method to insert a job after a single job in the queue.
|
|
[ @anchor r_exec_instrument_3 r_exec_instrument_3 ]
|
|
|
|
*/
|
|
|