#!/usr/bin/env python

from pysas.wrapper import Wrapper as w
import os, sys
from os.path import dirname
import inspect
import glob

import os.path
from os import path
import subprocess
import numpy as np
import matplotlib.pyplot as plt
from astropy.io import fits
from astropy.table import Table
from matplotlib.colors import LogNorm

import pyds9

import arches
from arches.utils import *
from arches.config import *

root_path=dirname(dirname(dirname(inspect.getfile(arches))))
print("Arches root path: {}".format(root_path))

archive_dir=root_path+'/data/archive'
events_dir=root_path+'/data/processed'
events_oot_dir=root_path+'/data/processed-oot'
products_dir=root_path+'/products/esas'
ds9reg_dir=root_path+'/data/ds9reg'

create_folder(products_dir)

inargs = ['--version']
t = w('sasver', inargs)
t.run()

files = glob.glob(archive_dir+'/*')


for obsid in files:
    obsid = os.path.basename(obsid)

    if(obsid in skip):
        continue

    work_dir = init_work_dir(obsid, products_dir=products_dir)
    print(f"\n*** jump to {work_dir} ***\n")
    os.chdir(work_dir)

    elow='350'
    ehigh='1100'

    key='mos1S001'
    run_mosspectra(key,'T T F T T F T',elow=elow,ehigh=ehigh)
    run_mosback   (key,'T T F T T F T')
    run_bkgimsky  (key,elow=elow,ehigh=ehigh)
    run_mossave   (key,elow=elow,ehigh=ehigh)
    
    key='mos2S002'
    run_mosspectra(key,'T T T T T T T',elow=elow,ehigh=ehigh)
    run_mosback   (key,'T T T T T T T')
    run_bkgimsky  (key,elow=elow,ehigh=ehigh)
    run_mossave   (key,elow=elow,ehigh=ehigh)
    
    key='pnS003'

    pattern=0
    run_pnspectra(key,'T T T T',elow=elow,ehigh=ehigh,pattern=pattern)
    run_pnback   (key,'T T T T')
    run_bkgimsky (key,elow=elow,ehigh=ehigh)
    run_pnsave   (key,elow=elow,ehigh=ehigh,pattern=pattern)

    pattern=4
    run_pnspectra(key,'T T T T',elow=elow,ehigh=ehigh,pattern=pattern)
    run_pnback   (key,'T T T T')
    run_bkgimsky (key,elow=elow,ehigh=ehigh)
    run_pnsave   (key,elow=elow,ehigh=ehigh,pattern=pattern)

    #sys.exit()
    



    
