Fetch data after scan

In the following example data is retrieved after a scan has been executed:

import PyTango, time, HasyUtils

def main():
    if not HasyUtils.isSardanaMonitorAlive():
        print "SardanaMonitor is NOT alive"
        return 
    d = PyTango.DeviceProxy( "p09/door/haso107d1.01")
    #
    # set the measurement group
    #
    d.runMacro( [ "change_mg", "-g", "mg_pynb", "-t", "d1_t01", "-c", "sig_gen,d1_c01"])
    while d.state() != PyTango.DevState.ON:
        time.sleep(0.1)
    #
    # execute an ascan
    #
    d.runMacro( ["ascan", "exp_dmy01", "0", "1", "2", "0.1"])
    while d.state() != PyTango.DevState.ON:
        time.sleep(0.1)
    #
    # fetch the data
    #
    hsh = HasyUtils.toSardanaMonitor( {'getData': True})
    if hsh[ 'result'].upper() != 'DONE':
        print "no or bad reply from SardanaMonitor", hsh[ 'result']
        return 
    HasyUtils.dct_print( hsh)
        
main()

{
  u'getData': 
    {
      u'D1_C01': 
        {
           u'x': [0.0, 0.5, 1.0],
           u'y': [-0.02761096, 0.12093281502987421, 10.069768820644976],
        },
      u'SIG_GEN': 
        {
           u'x': [0.0, 0.5, 1.0],
           u'y': [1.5443633089821673, 399.48143087942117, 2.308103245799023e-05],
        },
      u'symbols': 
        {
           u'file_name_': u'tst_08901.fio',
           u'scan_cmd': u'ascan exp_dmy01 0.0 1.0 2 0.1',
           u'scan_date': u'Thu Dec  6 13:56:38 2018',
           u'scan_dir': u'/home/kracht/Misc/IVP/temp',
           u'scan_id': u'8901',
        },
    },
   u'result': u'done',
}

Notice the returned symbols. The can be helpful when analysing the data.



2020-07-03