MODULE osm$spi_data_collector_r1;

*copyc osd$default_pragmats
*copyc osv$spi_control
*copyc pmp$ready_task
*copyc pmp$get_executing_task_gtid


?? TITLE := 'PROCEDURE osp$free_spi_environment_r1', EJECT ??

  PROCEDURE [XDCL, #GATE] osp$free_spi_environment_r1
    (VAR status: ost$status);

    status.normal := TRUE;
    osv$spi_control.collector_task.index := 0;
    osv$spi_control.collector_task.seqno := 0;
    osv$spi_control.operation_status := osc$spi_process_complete;
    osv$spi_control.number_of_spi_samples := 0;
    osv$spi_control.max_pages := 0;
    osv$spi_control.spi_sampling_interval := 0;
    osv$spi_control.spi_identifier := 0;
    osv$spi_control.collection_file := ' ';
    osv$spi_control.data_string := ' ';

    pmp$ready_task (osv$spi_control.initiator_task, status);

  PROCEND osp$free_spi_environment_r1;

?? TITLE := 'PROCEDURE osp$initialize_spi_collector_r1 ', EJECT ??

  PROCEDURE [XDCL, #GATE] osp$initialize_spi_collector_r1
    (VAR spi_control: ost$spi_control;
     VAR status: ost$status);

    status.normal := TRUE;
    osv$spi_control.pp_available := TRUE;

    pmp$get_executing_task_gtid (osv$spi_control.collector_task);

    pmp$ready_task (osv$spi_control.initiator_task, status);

    spi_control := osv$spi_control;

  PROCEND osp$initialize_spi_collector_r1;

MODEND osm$spi_data_collector_r1;

