double check
Actually you check the domain and those stuff in the constructor
p.addParameter('Domain' ,'PLANE' ,@FRM.checkDomain);
p.addParameter('NormType','LOWPASS',@FRM.checkNormType);
p.addParameter('DiscMax' ,-pi/4 ,@FRM.discMax);
and then you recheck-it just after when you do
obj.NormType = args.NormType;
obj.DiscMax = args.DiscMax;
obj.Domain = args.Domain;
since the set method check it as well
function obj = set.Domain(obj,domain)
if ~FRM.checkDomain(domain)
error('Domain value is incorrect')
end
obj.Domain = upper(domain);
end
In think it is not necessary to recheck in the set method since the values provided by the user has already been checked and when another method set that fields, since it is an internal method, you assume that the value is right.