def get_mgr_instance(self,antenna): ''' Get dinamic component instance ''' from Acspy.Clients.SimpleClient import PySimpleClient mgr = None sys.stdout = open("/dev/null", "w") client = PySimpleClient("CAN STATUS") sys.stdout = sys.__stdout__ deployed_mgrs = client.availableComponents(type_wildcard='IDL:alma/Control/AmbManager:1.0') for deployed_mgr in deployed_mgrs: if deployed_mgr.name.__contains__(antenna) : print "Trying to get ambManager from %s" % antenna try: mgr= client.getDynamicComponent(deployed_mgr.name, deployed_mgr.type, deployed_mgr.code, deployed_mgr.container_name) except maciErrType.CannotGetComponentEx, e: print e[0].shortDescription sys.exit(-1) except Exception, e: print e sys.exit(-1) break
#!/usr/bin/env python from Acspy.Clients.SimpleClient import PySimpleClient client = PySimpleClient() f1 = client.getDynamicComponent("FRIDGE001", 'IDL:alma/FRIDGE/FridgeControl:1.0', 'Acssim.Servants.Simulator', 'pyContainer') f2 = client.getDynamicComponent("FRIDGE002", 'IDL:alma/FRIDGE/FridgeControl:1.0', 'Acssim.Servants.Simulator', 'pyContainer')
LINKS - <a href="../../idl/html/interfaceHelloWorld_1_1HelloWorld.html">HelloWorld IDL Documentation</a> ''' # Import command-line arguments from sys import argv # Import the SimpleClient class from Acspy.Clients.SimpleClient import PySimpleClient # Make an instance of the PySimpleClient simpleClient = PySimpleClient() # Obtain a reference to a dynamic component using the ContainerServices # getComponent method. hwRef = simpleClient.getDynamicComponent( None, "IDL:alma/acsexmplHelloWorld/HelloWorld:1.0", "acsexmplHelloWorldImpl", str(argv[1])) if hwRef != None: simpleClient.getLogger().logInfo("Retrieved valid reference from manager.") #Do something useful with the reference. hwRef.displayMessage() simpleClient.getLogger().logInfo( "Method of dynamic component successfully invoked. Have a nice day!") else: simpleClient.getLogger().logAlert("Bad reference retrieved from manager") simpleClient.disconnect() print "The end __oOo__"
- <a href="../../idl/html/interfaceHelloWorld_1_1HelloWorld.html">HelloWorld IDL Documentation</a> ''' # Import command-line arguments from sys import argv # Import the SimpleClient class from Acspy.Clients.SimpleClient import PySimpleClient # Make an instance of the PySimpleClient simpleClient = PySimpleClient() # Obtain a reference to a dynamic component using the ContainerServices # getComponent method. hwRef = simpleClient.getDynamicComponent(None, "IDL:alma/acsexmplHelloWorld/HelloWorld:1.0", "acsexmplHelloWorldImpl", str(argv[1])) if hwRef != None: simpleClient.getLogger().logInfo("Retrieved valid reference from manager.") #Do something useful with the reference. hwRef.displayMessage() simpleClient.getLogger().logInfo("Method of dynamic component successfully invoked. Have a nice day!") else: simpleClient.getLogger().logAlert("Bad reference retrieved from manager") simpleClient.disconnect() print "The end __oOo__"
#!/usr/bin/env python from Acspy.Clients.SimpleClient import PySimpleClient client = PySimpleClient() f1 = client.getDynamicComponent("FRIDGE001", 'IDL:alma/FRIDGE/FridgeControl:1.0', 'Acssim.Servants.Simulator', 'pyContainer') f2 = client.getDynamicComponent("FRIDGE002", 'IDL:alma/FRIDGE/FridgeControl:1.0', 'Acssim.Servants.Simulator', 'pyContainer') h3 = client.getDynamicComponent("HELLOWORLD001", 'IDL:alma/acsexmplHelloWorld/HelloWorld:1.0', 'Acssim.Servants.Simulator', 'pyContainer') f1.doorStatus f2.doorStatus h3.displayMessage()
from Acspy.Clients.SimpleClient import PySimpleClient client = PySimpleClient("CAN STATUS") mgr = client.getDynamicComponent('CONTROL/DA41/AmbManager', 'IDL:alma/Control/AmbManager:1.0', 'ambManagerImpl', 'CONTROL/DA41/cppHGContainer') for j in range(0,5): for i in mgr.getNodes(j)[0]: print "channel %d , node %d => %s" %(i.channel, i.node, str(hex(i.node)))
#!/usr/bin/env python from Acspy.Clients.SimpleClient import PySimpleClient client = PySimpleClient() f1 = client.getDynamicComponent("FRIDGE001", 'IDL:alma/FRIDGE/FridgeControl:1.0', 'Acssim.Servants.Simulator', 'pyContainer') f2 = client.getDynamicComponent("FRIDGE002", 'IDL:alma/FRIDGE/FridgeControl:1.0', 'Acssim.Servants.Simulator', 'pyContainer') h3 = client.getDynamicComponent("HELLOWORLD001", 'IDL:alma/acsexmplHelloWorld/HelloWorld:1.0', 'Acssim.Servants.Simulator', 'pyContainer') f1.doorStatus f2.doorStatus h3.displayMessage()