?? RIGHT := 110 ??
?? NEWTITLE := 'INSTALL_SOFTWARE Utility: DISPLAY_PACKING_LIST Subcommand.' ??
MODULE ram$display_process_summary;

{ PURPOSE:
{   This module contains the interface that displays the contents of
{   the packing list.
{
{ DESIGN:
{   The compiled module resides in RAF$LIBRARY.
{
{ NOTES:
{

?? NEWTITLE := 'Global Declarations Referenced by This Module', EJECT ??
?? PUSH (LISTEXT := ON) ??
?? POP ??
*copyc clp$evaluate_parameters

?? TITLE := 'Global Declarations Declared by This Module', EJECT ??

?? TITLE := '[XDCL] rap$display_process_summary', EJECT ??

{ PURPOSE:
{   This interface displays a summary of the current status or
{   final status of an installation initiated by INSTALL_PRODUCT,
{   RAP$ACTIVATE_PRODUCT or INSTALL_CORRECTION.
{
{ DESIGN:
{
{ NOTES:
{

  PROCEDURE [XDCL] rap$display_process_summary
    (    parameter_list: clt$parameter_list;
     VAR status: ost$status);


{ PROCEDURE displ_pdt (
{   installation_identifier, ii: name = $required
{   output, o: file = $output
{   status)

?? PUSH (LISTEXT := ON) ??

  VAR
    pdt: [STATIC, READ, cls$declaration_section] record
      header: clt$pdt_header,
      names: array [1 .. 5] of clt$pdt_parameter_name,
      parameters: array [1 .. 3] of clt$pdt_parameter,
      type1: record
        header: clt$type_specification_header,
        qualifier: clt$name_type_qualifier,
      recend,
      type2: record
        header: clt$type_specification_header,
        default_value: string (7),
      recend,
      type3: record
        header: clt$type_specification_header,
      recend,
    recend := [
    [1,
    [88, 5, 3, 10, 33, 8, 76],
    clc$command, 5, 3, 1, 0, 0, 0, 3, 'DISPL_PDT'], [
    ['II                             ',clc$abbreviation_entry, 1],
    ['INSTALLATION_IDENTIFIER        ',clc$nominal_entry, 1],
    ['O                              ',clc$abbreviation_entry, 2],
    ['OUTPUT                         ',clc$nominal_entry, 2],
    ['STATUS                         ',clc$nominal_entry, 3]],
    [
{ PARAMETER 1
    [2, clc$normal_usage_entry, clc$non_secure_parameter,
    $clt$parameter_spec_methods[clc$specify_by_name, clc$specify_positionally],
    clc$pass_by_value, clc$immediate_evaluation, clc$standard_parameter_checking, 5, clc$required_parameter, 0
  , 0],
{ PARAMETER 2
    [4, clc$normal_usage_entry, clc$non_secure_parameter,
    $clt$parameter_spec_methods[clc$specify_by_name, clc$specify_positionally],
    clc$pass_by_value, clc$immediate_evaluation, clc$standard_parameter_checking, 3,
  clc$optional_default_parameter, 0, 7],
{ PARAMETER 3
    [5, clc$normal_usage_entry, clc$non_secure_parameter,
    $clt$parameter_spec_methods[clc$specify_by_name],
    clc$pass_by_reference, clc$immediate_evaluation, clc$standard_parameter_checking, 3,
  clc$optional_parameter, 0, 0]],
{ PARAMETER 1
    [[1, 0, clc$name_type], [1, osc$max_name_size]],
{ PARAMETER 2
    [[1, 0, clc$file_type],
    '$output'],
{ PARAMETER 3
    [[1, 0, clc$status_type]]];

?? POP ??

  CONST
    p$installation_identifier = 1,
    p$output = 2,
    p$status = 3;

  VAR
    pvt: array [1 .. 3] of clt$parameter_value;


    status.normal := TRUE;

    clp$evaluate_parameters (parameter_list, #SEQ(pdt), NIL, ^pvt, status);
    IF NOT status.normal THEN
      RETURN;
    IFEND;

  PROCEND rap$display_process_summary;
MODEND ram$display_process_summary;
