pro pspec, file, coord, fftspec

  aux = obj_new('eis_aux')
  data = obj_new('eis_data')
  print,'reading data....'
  data-> read,file, eis_hdr = hdr_obj, error = error

  ccd_sz=data->getccd_sz()
  nwin=data->getnwin()
  ccd_sz[0] = ccd_sz[0]/2
  det_a = fltarr(ccd_sz[0], ccd_sz[1])
  det_b = fltarr(ccd_sz[0], ccd_sz[1])

  for i=0,nwin-1 do begin
   data->getwin, i, wd, pos
    if pos[0] gt 2147 then begin
      pos[0] = pos[0]-2148 ; 30/4/09 AG Fixed 1 pixel shift error.
      det_a(pos[0]:pos[0]+pos[1]-1,pos[2]:pos[2]+pos[3]-1)=wd(*, *, 0)
    endif else begin
      det_b(pos[0]:pos[0]+pos[1]-1,pos[2]:pos[2]+pos[3]-1)=wd(*, *, 0)
    endelse
  endfor
; take out area on the detector specified:

det_b=det_b[coord[0]:coord[1], coord[2]:coord[3]]
det_a=det_a[coord[0]:coord[1], coord[2]:coord[3]]

n=n_elements(det_b)

b=reform(det_b, n)
a=reform(det_a, n)

delt = 2.e-6

print,'calculating ffts.....'

f = findgen(n/2+1)/(n*delt)
f = f/1.e3
fact = n_elements(f)/max(f)
fftb = fft(b)

ffta = fft(a)
ffta = fact*abs(ffta)^2.
fftb = fact*abs(fftb)^2.
;plot, f, fact*abs(fftb)^2.
;oplot,f,fact*abs(ffta)^2., line=2
fftspec={f:f, ffta:ffta, fftb:fftb}
print,'done!'
end
