from setup_cbp import *
import cbpassist as ca
import time

d['cbp.pinhole'] = 'grid'
d['cbp.alt'] =  'IDLE'
d['cbp.az'] = 'IDLE'
d['sbig.filter'] = 'Vi'

outdir = 'mondrik_temp_test/combination_scan'

if not os.path.exists(outdir):
    os.mkdir(outdir)

wl = np.arange(709,1051,1)[::-1] # reversed to d slow stuff last
filter_list = ['EMPTY', 'Bi', 'Vi', 'R', 'I']

e,_ = ca.calc_exp_time(wl)
t_expected = 2.*((np.sum(e) + 10.*len(e)) / 60.)
print('Approximate time for 1 scan: {} min'.format(t_expected))
print('This might be made longer by frequent ND filter rotations')


for w in wl:
    for fil in filter_list:
        d['sbig.filter'] = fil
        exptime, filter_pos = ca.calc_exp_time(w)
        d['sbig.EXPTIME'] = exptime+10.
        d['keithley.exptime'] = str(exptime)
        d['laser.wavelength'] = str(w)
        d['ndfilter.pos'] = str(filter_pos)
        if exptime+10 >= 100:
            d['spectro.exptime'] = 1.
        else:
            d['spectro.exptime'] = 0.1
    
        #  Do dark
        d['keithley'] = False
        print('Taking Dark')
        sched.shoot(d, outdir)
        d['keithley'] = True
        print('Taking Light')
        sched.shoot(d, outdir)
