Source code for diaGrabber.methods.alias

# -*- coding: utf-8 *-*
'''
This Module includes all alias-classes.
In diaGrabber you can exclude merge-values depending on other merge-values.
Imagine:
	* you have two merge-dimensions m1 and m2.
	* values from m2 are only usefull for you if values from m1 have a defined state.
	* you say: every time a merge-value from m1 is (over all basis-dim) maximal you want to take m2. in this case you type::
		m2.setAlias( methods.alias.max(m1) )

'''

from numpy import isnan as _isnan


[docs]class max(object): '''Take only values if the values of its alias are maximal over its basis-dimensions.''' def __init__(self, mergeDimensionInstance): self._index = mergeDimensionInstance.index def _get(self, new_value,old_value): #print new_value,old_value if _isnan(old_value): return True elif new_value > old_value: return True else: return False
[docs]class min(object): '''Take only values if the values of its alias are minimal over its basis-dimensions.''' def __init__(self, mergeDimensionInstance): self._index = mergeDimensionInstance.index def _get(self, new_value,old_value): if _isnan(old_value): return True elif new_value < old_value: return True else: return False