{ *************************************************************************** } MODULE mod_init_globals ; { Created 7-JUL-1989 MICHIGAN STATE UNIVERSITY, TRIGGER CONTROL SOFTWARE } { *************************************************************************** } INCLUDE mod_common_global_flags, mod_def_physics_tables, mod_handle_tracing, mod_handle_globals, mod_common_hard_io ; {from the TRICS hardware IO library } { *************************************************************************** } EXPORT init_global_scalers ;{PROCEDURE initialize all sptrg } { *************************************************************************** } IMPORT status_type, {from module MOD_COMMON_GLOBAL_FLAGS } ok,{already_done,}io_failure, {from module MOD_COMMON_GLOBAL_FLAGS } {state_type,} ON, OFF, {from module MOD_HANDLE_TRACING } {trace_info, trace_warn,}trace_error,{from module MOD_HANDLE_TRACING } inline_tracing, {from module MOD_HANDLE_TRACING } handle_trc_err, {from module MOD_HANDLE_TRACING } handle_trc_sys, {from module MOD_HANDLE_TRACING } modify_trace_inf, {from module MOD_HANDLE_TRACING } modify_trace_wrn, {from module MOD_HANDLE_TRACING } modify_trace_err, {from module MOD_HANDLE_TRACING } modify_io_tracing, {from module MOD_HANDLE_TRACING } modify_db_tracing, {from module MOD_HANDLE_TRACING } save_tracing_status, {from module MOD_HANDLE_TRACING } restore_tracing_status, {from module MOD_HANDLE_TRACING } reset_global_trgcnt_scaler, {from module MOD_HANDLE_GLOBAL } reset_global_beamx_scaler, {from module MOD_HANDLE_GLOBAL } cbus_param_list ; {from module MOD_COMMON_HARD_IO } { *************************************************************************** } { *************************************************************************** } VAR tag : VARYING_STRING(8) := 'INI/GLO%' ; { *************************************************************************** } { *************************************************************************** } PROCEDURE init_global_scalers ( tagext : VARYING_STRING(16) := '' ; inipar :^cbus_param_list := NIL ; VAR status :[OPTIONAL] status_type ) ; VAR ini_status : status_type ; local_io_param : BOOLEAN := TRUE ; fail_count : INTEGER ; BEGIN handle_trc_sys ( TAG := tag + tagext, MESSAGE := ' Initializing all Global Scalers ' ) ; IF PRESENT(status) THEN status := ok ; save_tracing_status ; modify_trace_inf ( CONSOLE := OFF, LOGFILE := OFF, REPORT := FALSE ) ; modify_trace_wrn ( CONSOLE := OFF, LOGFILE := OFF, REPORT := FALSE ) ; modify_db_tracing ( STATE := ON, REPORT := FALSE ) ; modify_io_tracing ( STATE := OFF, REPORT := FALSE ) ; modify_trace_err ( CONSOLE := OFF, LOGFILE := ON, REPORT := FALSE ) ; { *** allocate memory for the register initialization parameter list *** } IF ( inipar = NIL ) THEN NEW ( inipar ) ELSE local_io_param := FALSE ; fail_count := 0 ; reset_global_trgcnt_scaler ( TAGEXT := tagext, IOPAR := inipar, STATUS := ini_status ) ; IF ( ini_status = io_failure ) THEN BEGIN IF ( inline_tracing(trace_error) <> 0 ) THEN handle_trc_err ( TAG := tag + tagext, MESSAGE := ' Failure Initializing Global ' + ' Trigger Count Scaler ' ) ; fail_count := fail_count + 1 ; END ; reset_global_beamx_scaler ( TAGEXT := tagext, IOPAR := inipar, STATUS := ini_status ) ; IF ( ini_status = io_failure ) THEN BEGIN IF ( inline_tracing(trace_error) <> 0 ) THEN handle_trc_err ( TAG := tag + tagext, MESSAGE := ' Failure Initializing Global ' + ' Beam Crossing Count Scaler ' ) ; fail_count := fail_count + 1 ; END ; { *** release the memory from the register initialization io parameters *** } IF ( local_io_param = TRUE ) THEN BEGIN DISPOSE ( inipar ) ; END ; restore_tracing_status ( REPORT := FALSE ) ; IF ( fail_count <> 0 ) THEN BEGIN handle_trc_err ( TAG := 'INI/ODB%', MESSAGE := ' Global Scaler Initialization Failure Count Is ' + CONVERT(STRING,fail_count) + ', Check Log File ' ) ; IF PRESENT(status) THEN status := io_failure ; END ; END ; { *************************************************************************** } { *************************************************************************** } END. { DEC/CMS REPLACEMENT HISTORY, Element MOD127_INIT_GLOBALS.PAS} { *1 26-MAR-1990 09:03:01 TRIGGER "original loading of pascal source"} { DEC/CMS REPLACEMENT HISTORY, Element MOD127_INIT_GLOBALS.PAS}