Source code for diaGrabber.source.methods._container

# -*- coding: utf-8 *-*
from diaGrabber import _utils
import calc as calcMethods
import exclude as excludeMethods
import transform as transformMethods

[docs]class _aliasContainer: ''' This option ... TODO: ... örtliche veränderung... ''' def __init__(self, parent): self._parent = parent.__class__ self._list = [] self._index = []
[docs] def append(self, mergeDimensionInstance): _utils.checkClassInstance(mergeDimensionInstance,self._parent) self._list.append(mergeDimensionInstance) #self._index.append(mergeDimensionInstance._mergeIndex)
[docs] def set(self, mergeDimensionInstance, index): _utils.checkClassInstance(mergeDimensionInstance,self._parent) self._list[int(index)] = mergeDimensionInstance #self._index[int(index)] = mergeDimensionInstance._mergeIndex
[docs]class _calcContainer: ''' TODO ''' def __init__(self): self._list = []
[docs] def append(self, calcMethodInstance): _utils.checkModuleInstance(calcMethodInstance,calcMethods) self._list.append(calcMethodInstance)
[docs] def get(self, index=None): if index==None: #return every entry as list return self._list else: return self._list[int(index)]
[docs] def set(self, calcMethodInstance, index=None): if index==None: self.appendCalcMethod(calcMethodInstance) else: _utils.checkModuleInstance(calcMethodInstance,calcMethods) self._list[int(index)] = calcMethodInstance
[docs] def available(self): '''return all available classes in methods.calc''' return _utils.getAvailableClassesInModule(calcMethods)
def _clean(self): for l in self._list: l._clean()
[docs]class _excludeContainer: ''' assign one or more excludeMethod-classes of from :mod:`diaGrabber.methods.exclude` Using this option you can exclude values from a dimension because of its development when readed out. ''' def __init__(self): self._list = []
[docs] def append(self, excludeMethodInstance): _utils.checkModuleInstance(excludeMethodInstance,excludeMethods) self._list.append(excludeMethodInstance)
[docs] def get(index=None): if index==None: #return every entry as list return self._list else: return self._list[int(index)]
[docs] def available(self): '''return all available classes in methods.exlude''' return _utils.getAvailableClassesInModule(excludeMethods)
[docs] def set(self, excludeMethodInstance, index=None): if index==None: self.appendExcludeMethod(excludeMethodInstance) else: _utils.checkModuleInstance(excludeMethodInstance,excludeMethods) self._list[int(index)] = excludeMethodInstance
[docs]class _transformContainer: ''' assign one or more transformMethod-classes of from :mod:`diaGrabber.methods.transform` using this option you can trnsform all basis-values after readout with the command:: target.transformDim() ''' def __init__(self): self._list= [] self.adhoc = []
[docs] def append(self, transformMethodInstance, adhoc=False): ''' *adhoc*: transform each value in readout ''' _utils.checkModuleInstance(transformMethodInstance,transformMethods) #for key in kwargs: # if key == "adhoc": self.adhoc.append(bool(adhoc)) # else: # raise KeyError("keyword '%s' not known" %key) self._list.append(transformMethodInstance)
[docs] def get(self): return self._list
[docs] def available(self): '''return all available classes in methods.transform''' return _utils.getAvailableClassesInModule(transformMethods)
def _clean(self): for l in self._list: l._clean()