SXXXXXXX_RadarDataReader/_src_idl/pcrdv_E/PRO/main_pcrdv.pro
VALLONGOL 5de2650675 add
2025-11-12 13:43:30 +01:00

88 lines
3.0 KiB
Prolog

PRO main_pcrdv , flag_init,ptr_id
;--Opzioni di compilazione--
COMPILE_OPT STRICTARR
;@global_data_common.sh
COMMON cmp_signal_data_rec_c , cmp_signal_data_rec
COMMON exp_internal_c , exp_internal
COMMON ana_service_data_c , ana_service_data
; Setting del comando per il setting del font
font_cmd = set_font_cmd()
; Lettura della revisione
@pcrdv_revisione.sh
; Se la "flag_init" vale " 1 " o non c'e' la struttura dati
; Inizializzazioni ; viene eseguita l'inizializzazione.
IF (N_ELEMENTS(flag_init) EQ 0) THEN $ ; Altrimenti rimane valida la struttura
BEGIN ; "cmp_signal_data_rec" in memoria
flag_init = 1
ENDIF
struct_info = SIZE(cmp_signal_data_rec)
struct_present = struct_info[struct_info[0]+1] EQ 8 ; Verifica se la struttura dati esiste
CASE (1) OF
((flag_init EQ 1) OR (struct_present EQ 0)) : $
BEGIN
init_service_data
END
(flag_init EQ 0) : $
BEGIN
num_batch = N_ELEMENTS(cmp_signal_data_rec.mat_data_intern_var_list[*,0])
ana_service_data.var_analysis_batch_interval[0] = 0L
ana_service_data.var_analysis_batch_interval[1] = (num_batch-1)
ana_service_data.sig_analysis_batch_interval[0] = 0L
ana_service_data.sig_analysis_batch_interval[1] = (num_batch-1)
; ana_service_data.start_batch_ind_1 = 0.
; ana_service_data.stop_batch_ind_1 = num_batch-1
ana_service_data.num_of_batches = num_batch
ana_service_data.data_type = 1
END
(flag_init EQ 2) : $
BEGIN
num_batch = N_ELEMENTS(cmp_signal_data_rec.mat_data_intern_var_list[*,0])
init_service_data , flag_init
ana_service_data.var_analysis_batch_interval[0] = 0L
ana_service_data.var_analysis_batch_interval[1] = (num_batch-1)
ana_service_data.sig_analysis_batch_interval[0] = 0L
ana_service_data.sig_analysis_batch_interval[1] = (num_batch-1)
; ana_service_data.start_batch_ind_1 = 0.
; ana_service_data.stop_batch_ind_1 = num_batch-1
ana_service_data.num_of_batches = num_batch
ana_service_data.data_type = 1
IF ( N_ELEMENTS(cmp_signal_data_rec.segnale) GT 1 ) THEN $
BEGIN
ana_service_data.presenza_signal_flag = 1
ana_service_data.complete_signal_flag = 1
ENDIF $
ELSE BEGIN
ana_service_data.presenza_signal_flag = 0
ENDELSE
END
ENDCASE
; verifica la consistenza della struttura dati cmp_signal_data_rec e
; crea una nuova variabile di nome SIGNAL_BATCH_VALIDITY
check_data_struct
main_title = 'PCRDV - Rev. ' + pcrdv_rev + ' ' + ana_service_data.viewed_file_name
;- Call del widget di interfaccia PCRDV
pcrdv_gui , $
;-Input-----------------------------------------
pcrdv_rev = pcrdv_rev , $
x_center = ana_service_data.x_screen_center , $
y_center = ana_service_data.y_screen_center , $
PTR_ID = ptr_id
;-----------------------------------------------
RETURN
END