예제 #1
0
 def createPMElement(self, ctrl_obj, name, axis, elements=[]):
     e_cfg = createElemConf(self.pool, axis, name)
     elem_obj = createPoolPseudoMotor(self.pool, ctrl_obj, e_cfg, elements)
     ctrl_obj.add_element(elem_obj)
     self.pms[name] = elem_obj
     self.pool.add_element(elem_obj)
     return elem_obj
예제 #2
0
 def createMotorElement(self, ctrl_obj, name, axis):
     e_cfg = createElemConf(self.pool, axis, name)
     elem_obj = createPoolMotor(self.pool, ctrl_obj, e_cfg)
     ctrl_obj.add_element(elem_obj)
     # MOT elements
     self.mots[name] = elem_obj
     self.pool.add_element(elem_obj)
     return elem_obj
예제 #3
0
 def createZeroDElement(self, ctrl_obj, name, axis):
     e_cfg = createElemConf(self.pool, axis, name)
     elem_obj = createPoolZeroDExpChannel(self.pool, ctrl_obj, e_cfg)
     ctrl_obj.add_element(elem_obj)
     # ZeroD elements
     self.zerods[name] = elem_obj
     self.pool.add_element(elem_obj)
     return elem_obj
예제 #4
0
 def createTGElement(self, ctrl_obj, name, axis):
     e_cfg = createElemConf(self.pool, axis, name)
     elem_obj = createPoolTriggerGate(self.pool, ctrl_obj, e_cfg)
     ctrl_obj.add_element(elem_obj)
     # TG elements
     self.tgs[name] = elem_obj
     self.pool.add_element(elem_obj)
     return elem_obj
예제 #5
0
파일: base.py 프로젝트: rhomspuron/sardana
 def createPCElement(self, ctrl_obj, name, axis, elements=[]):
     e_cfg = createElemConf(self.pool, axis, name)
     elem_obj = createPoolPseudoCounter(self.pool, ctrl_obj, e_cfg,
                                        elements)
     ctrl_obj.add_element(elem_obj)
     self.pcs[name] = elem_obj
     self.pool.add_element(elem_obj)
     return elem_obj
예제 #6
0
 def createCTElement(self, ctrl_obj, name, axis):
     e_cfg = createElemConf(self.pool, axis, name)
     elem_obj = createPoolCounterTimer(self.pool, ctrl_obj, e_cfg)
     ctrl_obj.add_element(elem_obj)
     # CT elements
     self.cts[name] = elem_obj
     self.pool.add_element(elem_obj)
     return elem_obj
예제 #7
0
파일: base.py 프로젝트: rhomspuron/sardana
 def createMotorElement(self, ctrl_obj, name, axis):
     e_cfg = createElemConf(self.pool, axis, name)
     elem_obj = createPoolMotor(self.pool, ctrl_obj, e_cfg)
     ctrl_obj.add_element(elem_obj)
     # MOT elements
     self.mots[name] = elem_obj
     self.pool.add_element(elem_obj)
     return elem_obj
예제 #8
0
파일: base.py 프로젝트: rhomspuron/sardana
 def createTGElement(self, ctrl_obj, name, axis):
     e_cfg = createElemConf(self.pool, axis, name)
     elem_obj = createPoolTriggerGate(self.pool, ctrl_obj, e_cfg)
     ctrl_obj.add_element(elem_obj)
     # TG elements
     self.tgs[name] = elem_obj
     self.pool.add_element(elem_obj)
     return elem_obj
예제 #9
0
파일: base.py 프로젝트: rhomspuron/sardana
 def createTwoDElement(self, ctrl_obj, name, axis):
     e_cfg = createElemConf(self.pool, axis, name)
     elem_obj = createPoolTwoDExpChannel(self.pool, ctrl_obj, e_cfg)
     ctrl_obj.add_element(elem_obj)
     # TwoD elements
     self.twods[name] = elem_obj
     self.pool.add_element(elem_obj)
     return elem_obj
예제 #10
0
파일: base.py 프로젝트: rhomspuron/sardana
 def createCTElement(self, ctrl_obj, name, axis):
     e_cfg = createElemConf(self.pool, axis, name)
     elem_obj = createPoolCounterTimer(self.pool, ctrl_obj, e_cfg)
     ctrl_obj.add_element(elem_obj)
     # CT elements
     self.cts[name] = elem_obj
     self.pool.add_element(elem_obj)
     return elem_obj
예제 #11
0
 def createPCElement(self, ctrl_obj, name, axis, elements=[]):
     e_cfg = createElemConf(self.pool, axis, name)
     elem_obj = createPoolPseudoCounter(self.pool, ctrl_obj, e_cfg,
                                        elements)
     ctrl_obj.add_element(elem_obj)
     # MOT elements
     self.pcs[name] = elem_obj
     self.pool.add_element(elem_obj)
     return elem_obj
예제 #12
0
 def createElements(self, ctrl_klass, ctrl_lib, ctrl_props):
     # create controller and element
     ctrl_conf = createCtrlConf(self.pool, 'tgctrl01', ctrl_klass,
                                ctrl_lib, ctrl_props)
     elem_conf = createElemConf(self.pool, 1, 'tg01')
     self.tg_ctrl = createPoolController(self.pool, ctrl_conf)
     self.tg_elem = createPoolTriggerGate(self.pool, self.tg_ctrl,
                                          elem_conf)
     # add controller and elements to containers
     self.tg_ctrl.add_element(self.tg_elem)
     self.pool.add_element(self.tg_ctrl)
     self.pool.add_element(self.tg_elem)
     # create Synchronization action and its configuration
     self.conf_ctrl = createControllerConfiguration(self.tg_ctrl,
                                                    [self.tg_elem])
     self.ctrls = get_acq_ctrls([self.conf_ctrl])
     self.tgaction = PoolSynchronization(self.tg_elem)
     self.tgaction.add_element(self.tg_elem)
예제 #13
0
 def createElements(self, ctrl_klass, ctrl_lib, ctrl_props):
     # create controller and element
     ctrl_conf = createCtrlConf(self.pool, 'tgctrl01', ctrl_klass, ctrl_lib,
                                ctrl_props)
     elem_conf = createElemConf(self.pool, 1, 'tg01')
     self.tg_ctrl = createPoolController(self.pool, ctrl_conf)
     self.tg_elem = createPoolTriggerGate(self.pool, self.tg_ctrl,
                                          elem_conf)
     # add controller and elements to containers
     self.tg_ctrl.add_element(self.tg_elem)
     self.pool.add_element(self.tg_ctrl)
     self.pool.add_element(self.tg_elem)
     # create Synchronization action and its configuration
     self.conf_ctrl = createControllerConfiguration(self.tg_ctrl,
                                                    [self.tg_elem])
     self.ctrls = get_acq_ctrls([self.conf_ctrl])
     self.tgaction = PoolSynchronization(self.tg_elem)
     self.tgaction.add_element(self.tg_elem)