#!/usr/bin/env python import os, sys import PyTango from taurus.core.util.codecs import CodecFactory import HasyUtils msLst = HasyUtils.getLocalMacroServerNames() # # msLst: ['p99/macroserver/hostname.01'] # speak to the first, probaly the only server # ms=PyTango.DeviceProxy( msLst[0]) # # Read the environment # value = ms.Environment value = CodecFactory().getCodec('pickle').decode(value) dct = value[1]['new'] if len( sys.argv) > 2: sys.exit(0) # # if no argument is supplied, print the whole environment (except ScanHistory) # if len( sys.argv) == 1: print( "The environment of %" % msLst[0]) for key in list( dct.keys()): # # ScanHistory produces much output # if key == 'ScanHistory': continue print "---- " + key, dct[key] print( "\nUsage, e.g.:") print( " ./msEnv.py ") print( " ./msEnv.py ScanDir") print( " ./msEnv.py ScanPrefix") print( " ./msEnv.py DetectorName") sys.exit(0) if not dct.has_key( sys.argv[1]): print( "%s not in the environment" % sys.argv[1]) sys.exit(0) print( dct[sys.argv[1]])