
;+ ***********************************************************************
; NAME:
;	NRH_SOURCEASCI
;
; PURPOSE:
;	Cette procedure transforme un fichier dde flux FITS en fichier ASCII
;
; CATEGORY:
;	Fichiers FLUX
;
; CALLING SEQUENCE:
;	NRH_SOURCEASCI, FITS, FASCII
;
; INPUTS:
;	FITS	Fichier FITS contenant des flux
;
;	FASCI	Fichier ASCIi a ecrire
;
; KEYWORD PARAMETERS:
;
; OUTPUTS:
;
; COMMON BLOCKS:
;
; PROCEDURE:
;	Cette procedure ecrit les parametres et positions successifs
;	des centres actifs dans un fichier ASCII a partir d'un fichier source.
;	Si le fichier ASCII existe deja, il est remplace.
;	La date, la frequence, les positions de depart de chaque centre actif
;	sont indiques en tete de chaque liste.
;
; EXAMPLE:
;	
;
; MODIFICATION HISTORY:
;	Ecrit par A Bouteille le 30/12/03 a partir de nrh_flusasci correction fichier ascii des positions des centres (AB)
;       Le fichier contient toutes les 
;-*******************************************************************

PRO NRH_CENTERASCI, FFLUX, FASCI, GROUP=Group

IF NOT KEYWORD_SET(GROUP) THEN Group=0

	R=  FINDFILE (Fflux)
	IF R(0) EQ '' THEN BEGIN
		M= WIDGET_MESSAGE('File '+Fflux+'no exist', $
			DIALOG_PARENT=Group)
	RETURN & END

;	NX = CW_XTD_NRHF ( Fflux, GROUP=Group)
	H0 = HEADFITS (Fflux)
	DATE = FXPAR(H0,'DATE-OBS')
        nbext = fxpar(H0, 'N_EXTEND')
        if nbext le 0 then begin
            r=widget_message('Incorrect File for operation')
            return
        endif
	R= FINDFILE (Fasci)
	OPENW, Unit, Fasci, /GET_LUN
        FOR nx=1,nbext DO BEGIN	
	    VAL = MRDFITS( Fflux, Nx, Header,/SILENT)
	    FREQ = STRCOMPRESS (STRING(FXPAR(Header,'FREQ'),FORMAT='(F5.1)'), $
				/REMOVE_ALL)
            pcx = fxpar(Header, 'CRPIX1')
            pcy = fxpar(Header, 'CRPIX2')
            ray = fxpar(Header, 'SOLAR_R')
	    Xc = IND_RS(FXPAR(Header,'EWSTART'),pcx,ray)        
	    Xc = STRCOMPRESS (STRING(xc,FORMAT='(F12.2)'), $
				/REMOVE_ALL)
	    Yc = IND_RS(FXPAR(Header,'NSSTART'),pcy,ray)        
	    Yc = STRCOMPRESS (STRING(yc,FORMAT='(F12.2)'), $
				/REMOVE_ALL)

	    PRINTF, Unit, 'Date: '+Date+' Freq: '+Freq+'MHz '+$
		';Region, X='+Xc+', Y='+Yc

	    SZ= SIZE(Val.flux)
            printf,unit,'*************************************************'
            printf,unit,' SOURCE NUMERO ',nx, sz(1), 'points'
            printf,unit,'  NUM     TIME        INTENSITY        EWPOS       NSPOS          FLUX'
            ch_format = '(i5,2x,a,g12.4,2x,2g12.4,2x,g12.4)'
            ewposrs = ind_rs(val.ewpos,pcx,ray)
            nsposrs = ind_rs(val.nspos,pcy,ray)
	    FOR I = 0, Sz(1)-1 DO $
                printf,unit,i,msh(val.time(i)),val.intensity(i),  $
                ewposrs(i),nsposrs(i),val.flux(i),format=ch_format
        ENDFOR
	FREE_LUN, Unit

END
