poolmetacontroller

This module is part of the Python Pool libray. It defines the base classes for

Classes

DataInfo

Inheritance diagram of DataInfo
class DataInfo(name, dtype, dformat=<_mock._Mock object>, access=<_mock._Mock object>, description='', default_value=None, memorized='true', fget=None, fset=None, maxdimsize=None)[source]

Bases: object

copy()[source]
classmethod toDataInfo(name, info)[source]
toDict()[source]
serialize(*args, **kwargs)[source]

TypeData

Inheritance diagram of TypeData
class TypeData(**kwargs)[source]

Bases: object

Information for a specific Element type

ControllerLib

Inheritance diagram of ControllerLibrary
class ControllerLibrary(**kwargs)[source]

Bases: sardana.sardanameta.SardanaLibrary

Object representing a python module containning controller classes. Public members:

  • module - reference to python module
  • f_path - complete (absolute) path and filename
  • f_name - filename (including file extension)
  • path - complete (absolute) path
  • name - module name (without file extension)
  • controller_list - list<ControllerClass>
  • exc_info - exception information if an error occured when loading
    the module
add_controller(meta_class)

Adds a new :class:~`sardana.sardanameta.SardanaClass` to this library.

Parameters:meta_class (:class:~`sardana.sardanameta.SardanaClass`) – the meta class to be added to this library
get_controller(meta_class_name)

Returns a :class:~`sardana.sardanameta.SardanaClass` for the given meta class name or None if the meta class does not exist in this library.

Parameters:meta_class_name (str) – the meta class name
Returns:a meta class or None
Return type::class:~`sardana.sardanameta.SardanaClass`
get_controllers()

Returns a sequence of the meta classes that belong to this library.

Returns:a sequence of meta classes that belong to this library
Return type:seq<:class:~`sardana.sardanameta.SardanaClass`>
has_controller(meta_class_name)

Returns True if the given meta class name belongs to this library or False otherwise.

Parameters:meta_class_name (str) – the meta class name
Returns:True if the given meta class name belongs to this library or False otherwise
Return type:bool
serialize(*args, **kwargs)[source]

Returns a serializable object describing this object.

Returns:a serializable dict
Return type:dict
controllers

ControllerClass

Inheritance diagram of ControllerClass
class ControllerClass(**kwargs)[source]

Bases: sardana.sardanameta.SardanaClass

Object representing a python controller class. Public members:

  • name - class name
  • klass - python class object
  • lib - ControllerLibrary object representing the module where the controller is.
serialize(*args, **kwargs)[source]

Returns a serializable object describing this object.

Returns:a serializable dict
Return type:dict
controller_class
gender
model
organization

Constants

CONTROLLER_TEMPLATE = 'class @controller_name@(@controller_type@):\n """@controller_name@ description."""\n\n'

String containing template code for a controller class

CTRL_TYPE_MAP = {<_mock._Mock object at 0x7f9ba58e6550>: <class 'sardana.pool.poolcontroller.PoolController'>, <_mock._Mock object at 0x7f9ba58e6950>: <class 'sardana.pool.poolcontroller.PoolController'>, <_mock._Mock object at 0x7f9ba58e6b90>: <class 'sardana.pool.poolcontroller.PoolController'>, <_mock._Mock object at 0x7f9ba58e6c90>: <class 'sardana.pool.poolcontroller.PoolController'>, <_mock._Mock object at 0x7f9ba58e6d90>: <class 'sardana.pool.poolcontroller.PoolController'>, <_mock._Mock object at 0x7f9ba58e6e10>: <class 'sardana.pool.poolcontroller.PoolPseudoMotorController'>, <_mock._Mock object at 0x7f9ba58e6f10>: <class 'sardana.pool.poolcontroller.PoolController'>, <_mock._Mock object at 0x7f9ba58e6fd0>: <class 'sardana.pool.poolcontroller.PoolPseudoCounterController'>}

a dictionary dict<ElementType, class> mapping element type enumeration with the corresponding controller pool class (PoolController or sub-class of it).

TYPE_MAP = {<_mock._Mock object at 0x7f9ba58e6c10>: ('Motor', 'Motor', <class 'sardana.pool.poolmotor.PoolMotor'>, 'motor/{ctrl_name}/{axis}', <class 'sardana.pool.controller.MotorController'>), <_mock._Mock object at 0x7f9ba58e6c50>: ('CTExpChannel', 'ExpChannel', <class 'sardana.pool.poolcountertimer.PoolCounterTimer'>, 'expchan/{ctrl_name}/{axis}', <class 'sardana.pool.controller.CounterTimerController'>), <_mock._Mock object at 0x7f9ba58e6ed0>: ('Instrument', 'Instrument', <class 'sardana.pool.poolinstrument.PoolInstrument'>, '{full_name}', None), <_mock._Mock object at 0x7f9ba58e6f50>: ('Controller', 'Controller', {<_mock._Mock object at 0x7f9ba58e6e10>: <class 'sardana.pool.poolcontroller.PoolPseudoMotorController'>, <_mock._Mock object at 0x7f9ba58e6550>: <class 'sardana.pool.poolcontroller.PoolController'>, <_mock._Mock object at 0x7f9ba58e6b90>: <class 'sardana.pool.poolcontroller.PoolController'>, <_mock._Mock object at 0x7f9ba58e6d90>: <class 'sardana.pool.poolcontroller.PoolController'>, <_mock._Mock object at 0x7f9ba58e6c90>: <class 'sardana.pool.poolcontroller.PoolController'>, <_mock._Mock object at 0x7f9ba58e6f10>: <class 'sardana.pool.poolcontroller.PoolController'>, <_mock._Mock object at 0x7f9ba58e6fd0>: <class 'sardana.pool.poolcontroller.PoolPseudoCounterController'>, <_mock._Mock object at 0x7f9ba58e6950>: <class 'sardana.pool.poolcontroller.PoolController'>}, 'controller/{klass}/{name}', <class 'sardana.pool.controller.Controller'>), <_mock._Mock object at 0x7f9ba58f52d0>: ('PseudoMotor', 'Motor', <class 'sardana.pool.poolpseudomotor.PoolPseudoMotor'>, 'pm/{ctrl_name}/{axis}', <class 'sardana.pool.controller.PseudoMotorController'>), <_mock._Mock object at 0x7f9ba58f5350>: ('MotorGroup', 'MotorGroup', <class 'sardana.pool.poolmotorgroup.PoolMotorGroup'>, 'mg/{pool_name}/{name}', None), <_mock._Mock object at 0x7f9ba58f53d0>: ('OneDExpChannel', 'ExpChannel', <class 'sardana.pool.poolonedexpchannel.Pool1DExpChannel'>, 'expchan/{ctrl_name}/{axis}', <class 'sardana.pool.controller.OneDController'>), <_mock._Mock object at 0x7f9ba58f5410>: ('TwoDExpChannel', 'ExpChannel', <class 'sardana.pool.pooltwodexpchannel.Pool2DExpChannel'>, 'expchan/{ctrl_name}/{axis}', <class 'sardana.pool.controller.TwoDController'>), <_mock._Mock object at 0x7f9ba58f5450>: ('TriggerGate', 'TriggerGate', <class 'sardana.pool.pooltriggergate.PoolTriggerGate'>, 'triggergate/{ctrl_name}/{axis}', <class 'sardana.pool.controller.TriggerGateController'>), <_mock._Mock object at 0x7f9ba58f5490>: ('ZeroDExpChannel', 'ExpChannel', <class 'sardana.pool.poolzerodexpchannel.Pool0DExpChannel'>, 'expchan/{ctrl_name}/{axis}', <class 'sardana.pool.controller.ZeroDController'>), <_mock._Mock object at 0x7f9ba58f55d0>: ('IORegister', 'IORegister', <class 'sardana.pool.poolioregister.PoolIORegister'>, 'ioregister/{ctrl_name}/{axis}', <class 'sardana.pool.controller.IORegisterController'>), <_mock._Mock object at 0x7f9ba58f5650>: ('PseudoCounter', 'ExpChannel', <class 'sardana.pool.poolpseudocounter.PoolPseudoCounter'>, 'pc/{ctrl_name}/{axis}', <class 'sardana.pool.controller.PseudoCounterController'>), <_mock._Mock object at 0x7f9ba58f5ad0>: ('MeasurementGroup', 'MeasurementGroup', <class 'sardana.pool.poolmeasurementgroup.PoolMeasurementGroup'>, 'mntgrp/{pool_name}/{name}', None)}

dictionary dict<ElementType, tuple> where tuple is a sequence:

  1. type string representation
  2. family
  3. internal pool class
  4. automatic full name
  5. controller class
TYPE_MAP_OBJ = {<_mock._Mock object at 0x7f9ba58e6c10>: <sardana.pool.poolmetacontroller.TypeData object at 0x7f9ba58f54d0>, <_mock._Mock object at 0x7f9ba58e6c50>: <sardana.pool.poolmetacontroller.TypeData object at 0x7f9ba58f5550>, <_mock._Mock object at 0x7f9ba58e6ed0>: <sardana.pool.poolmetacontroller.TypeData object at 0x7f9ba58f5ed0>, <_mock._Mock object at 0x7f9ba58e6f50>: <sardana.pool.poolmetacontroller.TypeData object at 0x7f9ba58f5dd0>, <_mock._Mock object at 0x7f9ba58f52d0>: <sardana.pool.poolmetacontroller.TypeData object at 0x7f9ba58f5e10>, <_mock._Mock object at 0x7f9ba58f5350>: <sardana.pool.poolmetacontroller.TypeData object at 0x7f9ba58f57d0>, <_mock._Mock object at 0x7f9ba58f53d0>: <sardana.pool.poolmetacontroller.TypeData object at 0x7f9ba58f5850>, <_mock._Mock object at 0x7f9ba58f5410>: <sardana.pool.poolmetacontroller.TypeData object at 0x7f9ba58f5590>, <_mock._Mock object at 0x7f9ba58f5450>: <sardana.pool.poolmetacontroller.TypeData object at 0x7f9ba58f5050>, <_mock._Mock object at 0x7f9ba58f5490>: <sardana.pool.poolmetacontroller.TypeData object at 0x7f9ba58f5710>, <_mock._Mock object at 0x7f9ba58f55d0>: <sardana.pool.poolmetacontroller.TypeData object at 0x7f9ba58f5190>, <_mock._Mock object at 0x7f9ba58f5650>: <sardana.pool.poolmetacontroller.TypeData object at 0x7f9ba58f5510>, <_mock._Mock object at 0x7f9ba58f5ad0>: <sardana.pool.poolmetacontroller.TypeData object at 0x7f9ba58f5790>}

dictionary dict<ElementType, TypeData>