;+ ; Contains the lit_hfr_1 procedure ; ; :Author: ; Philippe Zarka ; ; :History: ; 2006/03/08: Created ; ; 2013/03/01: Last Edit ;- ; ;+ ; lecture d'un seul fichier Kronos, reconnaissance des modes "analyse" ; et rangement dans une structure z ; ; :Uses: ; etat_hfr, extrait_hfr, paquets_hfr ; ; :Params: ; fichierK: in, required, type=string ; nom de fichier Kronos ( Kaaaajjj.hh ) ; z: out, required, type=sometype ; structure de donnees (voir EXTRAIT_HFR.pro) ;- pro LIT_HFR_1, fichierK, z PAQUETS_HFR, fichierK, HFR, HFRdata mode = ishft(HFR.entete(2) and '60'x,-5) test = where(mode eq 0) ; "analyse" seulement if test(0) eq -1 then goto,fin HFR = HFR(test) nHFR = n_elements(HFR) nP = 1 & nP0 = 0 for i = 1, nHFR-1 do begin if total(HFR(i).entete(4:18) - HFR(nP0).entete(4:18)) eq 0 $ then nP = nP + 1 else begin message,'starting record index: '+string(NP0),/info ETAT_HFR, HFR(nP0).entete, mode if np gt 1 then begin message,string(nP)+' paquets extraits...',/info EXTRAIT_HFR, HFR(nP0:nP0+nP-1), HFRdata, zz if n_elements(zh) eq 0 then zh=reform(zz,n_elements(zz)) $ else zh=[zh,reform(zz,n_elements(zz))] help,zh endif else message,'/!\ skipping 1 paquet-length record ...',/info nP0 = i & nP = 1 endelse endfor message,'starting record index: '+string(NP0),/info ETAT_HFR, HFR(nP0).entete, mode if np gt 1 then begin message,string(nP)+' paquets extraits...',/info EXTRAIT_HFR, HFR(nP0:nP0+nP-1), HFRdata, zz if n_elements(zh) eq 0 then zh=reform(zz,n_elements(zz)) $ else zh=[zh,reform(zz,n_elements(zz))] help,zh endif else message,'/!\ skipping 1 paquet-length record ...',/info fin: z=zh help,z return end