
;+ ***********************************************************************
; NAME:
;	LITENTETE
;
; PURPOSE:
; 	Cette procedure lit le descripteur fixe et le descripteur chaine 
;	d'un fichier HELIO ou bien appelle LIT_HEADER_NRH1 si l'extension
;	du nom de fichier est ".fts" (fichiers FITS) et remplit la structure
;	FILEINFO
;
; CATEGORY:
;	NRH1 Fichiers
;
; CALLING SEQUENCE:
;	LITENTETE, Unit, Nom, Fileinfo

; INPUTS:
;	UNIT	Unite de lecture
;
;	NOM	Nom du fichier
;	
; KEYWORD PARAMETERS:
;	Non
;
; OUTPUTS:
;	FILEINFO	Structure de type NRH1_FILEINFO
;
; COMMON BLOCKS:
;	Non
;
; MODIFICATION HISTORY: (bonmartin@obspm.fr)
;	13/11/98 Adapte du logiciel XHELIO (JB)
; modif mars 96 : nblfixe nb de blocs occupes par le descripteur fixe 
;                         =1 si longrec/4 > 64
;                         >1 si longrec/4 < 64
; modif dec 96  : erreur dans codage de la date en caracteres corrigee
; modif oct 97  : cas des enrgts longs >65534  : string too long
; modif nov 97  : ecriture de la date en anglais
;-*******************************************************************

PRO litentete, n,nomfichier, fileinfo

    if (n_params() le 2) then begin
	Print, ' Nombre insuffisant de parametres  :'
	Print, ' '
	Print, ' Syntaxe de Litentete : Litentete, n, ''nomfichier'', varinfo '
	Print, ' Erreur. '
    endif

; Creation d'une structure idl remplacant le descripteur du fichier helio.
	textinfo= {nrh1_textinfo}
	fileinfo= {nrh1_fileinfo}


    mois = ['JAN', 'FEB', 'MAR', 'APR', 'MAY', 'JUN', $
	    'JUL', 'AUG', 'SEP', 'OCT', 'NOV', 'DEC']


	LECDESCR, N, Nomfichier, Lreg, Fixe, Mots, Vals, Coment
                                                         
    fileinfo.nblocs = Fixe.Nblocs	; Nombres de blocs de l'entete.     
    fileinfo.nbtete = Fixe.Nbtete	; Taille entete en nbombre de blocs.
    fileinfo.imint  = Fixe.Imint	; Entete d'image (1 entier, 0 reel). 
    fileinfo.nbaxes = Fixe.Nbaxes	; Nombre d'axes.   
    fileinfo.nbpix  = Fixe.Nbpix	; Nombre total de valeurs par axe.
				; Type de l'origine ( entiere ou reelle )
    fileinfo.orgint = Fixe.Orgint
    Fileinfo.Valorg(0) = Fixe.Valorg0
    Fileinfo.paspix(0) = Fixe.paspix0
    Fileinfo.Valorg(1) = Fixe.Valorg1
    Fileinfo.paspix(1) = Fixe.paspix1
;                                 


    fileinfo.heurdeb = Fixe.Heurdeb	; Heure de debut d'enregistrement en ms
    fileinfo.heurfin = Fixe.Heurfin	; Heure de fin d'enregistrement en ms
	IF fixe.date(2) LE 100 THEN Fixe.date(2) = Fixe.date(2) + 1900
    fileinfo.date    = strcompress (string (format = $
	"(i2. 2, '-', a3, '-', i4.4)", $
	 Fixe.date(0), MOIS(Fixe.Date(1) - 1), Fixe.date(2)), $
	/remove_all)              
    fileinfo.valmin = Fixe.Valmin	; Valeur nimimum des donnees du fichier
    fileinfo.valmax = Fixe.Valmax	; Valeur maximun des donnees du fichier
					; image contient une ou deux infos. 
    fileinfo.facbloc = Fixe.Facbloc        
;    fileinfo.nblsup  = b(37)		; Nombre de ligne suplementaire
	STATUS = FSTAT(N) 
    fileinfo.nomfich = Nomfichier	; Nom de l'image 
    fileinfo.tfich   = status.size	; Taille du fichier

; Taille d'un enregistrement 
    fileinfo.tenre = Lreg / 4

	fileinfo.texte.mot = Mots
	Fileinfo.texte.val = Vals 

    end






