def __init__(self, *args, **kwargs): # Setup for checking. self.constraints = Constraint([ Constraint( [Constraint_TSO()], reduce=Constraint.notany ), DMSAttrConstraint( name='exp_type', sources=['exp_type'], value=( 'nrs_autoflat' '|nrs_autowave' '|nrs_fixedslit' ), force_unique=False ), SimpleConstraint( value=True, test=lambda value, item: nrsfss_valid_detector(item), force_unique=False ), Constraint_Optical_Path(), Constraint_Target(association=self), ]) # Check and continue initialization. super(Asn_Lv3NRSFSS, self).__init__(*args, **kwargs)
def __init__(self, *args, **kwargs): # Setup constraints self.constraints = Constraint([ Constraint_Base(), Constraint_Mode(), DMSAttrConstraint( name='exp_type', sources=['exp_type'], value='nrs_fixedslit' ), SimpleConstraint( value=True, test=lambda value, item: nrsfss_valid_detector(item), force_unique=False ), Constraint( [ SimpleConstraint( value='science', test=lambda value, item: self.get_exposure_type(item) != value, force_unique=False ), Constraint( [ DMSAttrConstraint( name='expspcin', sources=['expspcin'], ), DMSAttrConstraint( name='nods', sources=['numdthpt'], ), DMSAttrConstraint( name='subpxpts', sources=['subpxpns', 'subpxpts'], ), SimpleConstraint( value='science', test=lambda value, item: self.get_exposure_type(item) == value, force_unique=False ) ] ), ], reduce=Constraint.any ) ]) # Now check and continue initialization. super(Asn_Lv2NRSFSS, self).__init__(*args, **kwargs)