1from paida.paida_core.PAbsorber import * 2from paida.paida_core.IAnnotation import * 3from paida.paida_core.PUtilities import * 4 5class IBaseHistogram: 6 #_meps2 = -1.4901161193847656e-08 7 _meps2 = -6.0554544523933479e-06 8 9 def __init__(self, title): 10 self._annotation = IAnnotation() 11 self._annotation.addItem('Title', title, True) 12 self._axis = [] 13 14 def reset(self): 15 self._annotation.reset() 16 17 def annotation(self): 18 return self._annotation 19 20 def dimension(self): 21 return len(self._axis) 22 23 def entries(self): 24 ### Must be overridden. 25 raise NotImplementedError 26 27 def setTitle(self, title): 28 self._annotation.setValue('Title', title) 29 30 def title(self): 31 return self._annotation.value('Title') 32 33 def _setOption(self, option): 34 self._option = option 35 36 def _getOption(self): 37 if self._option == None: 38 return None 39 else: 40 return self._option.copy() 41 42 def _getOptionString(self): 43 return optionConstructor(self._option) 44 45 def _setName(self, name): 46 self._name = name 47 48 def _getName(self): 49 return self._name 50