
{ This common deck contains the type declarations for the }
{ JOB CONTROL BLOCK (JCB). }

{ The JCB is used to maintain information on a job. }

  { * * * * WARNING - If the length of this table grows * * * *}
{    * * * *    beyond 256 bytes, the constant <jrootsiz>* * * *}
{    * * * *    in the common deck ASMBCOM must be changed.* * *}
{    * * * *    There also be other changes required!!!    * * *}

TYPE
  jmt$job_control_block = record

{ The jcb_identifier MUST be the first field in the JCB.

    jcb_identifier: 0 .. 0ffff(16),

{ The following fields are referenced by assembly code; the offsets must not change unless
{ the deck tma$task_switch is changed.

    last_lpid_for_job: 0 .. 0ff(16),

{ End of fields referenced by assembly code.

    system_name: jmt$system_supplied_name,
    jobname: jmt$user_supplied_name,
    job_id: jmt$job_system_id,
    user_id: ost$user_identification,
    job_monitor_id: ost$global_task_id,
    ijle_p: ^jmt$initiated_job_list_entry,
    ijl_ordinal: jmt$ijl_ordinal,
    server_mainframe_id: pmt$binary_mainframe_id,
    last_execution_time: ost$free_running_clock,
    cptime_next_age_working_set: ost$cp_time_value,
    cptime_signal_last_sent: ost$cp_time_value,
*IF $true(osv$unix)
    signal_interval:  0 .. 7FFFFFFF(16),
*ELSE
    signal_interval:  0 .. 0FFFFFFFF(16),
*IFEND
    max_working_set_size: jmt$working_set_size,
    min_working_set_size: jmt$working_set_size,
    page_aging_interval: ost$aging_interval,
    cyclic_aging_interval: ost$aging_interval,
    detached_job_wait_time: jmt$detached_job_wait_time,
    next_cyclic_aging_time: ost$free_running_clock,
    sense_switches: pmt$sense_switches,
    perm_file_job_warning_limit: sft$counter,
    perm_file_job_warning_checking: boolean,
    perm_file_job_maximum_limit: sft$counter,
    temp_file_job_warning_limit: sft$counter,
    temp_file_job_warning_checking: boolean,
    temp_file_job_maximum_limit: sft$counter,
    swapped_job_entry: jmt$swapped_job_entry,
    account_project_specified: boolean,
  recend;

*copyc jmt$detached_job_wait_time
*copyc jmt$ijl_ordinal
*copyc jmt$initiated_job_list_entry
*copyc jmt$job_system_id
*copyc jmt$swapped_job_entry
*copyc jmt$system_supplied_name
*copyc jmt$user_supplied_name
*copyc jmt$working_set_size
*copyc ost$aging_interval
*copyc ost$cp_time
*copyc ost$global_task_id
*copyc ost$hardware_subranges
*copyc ost$user_identification
*copyc pmt$binary_mainframe_id
*copyc pmt$sense_switches
*copyc sft$counter
