Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function params = checkargs(h, radii, varargin)
- % Argument checking
- ip = inputParser;
- % required
- htest = @(h) validateattributes(h, {'double'}, {'real' 'nonnegative' 'nonsparse'});
- ip.addRequired('h', htest);
- rtest = @(radii) validateattributes(radii, {'double'}, {'real' 'positive' 'vector'});
- ip.addRequired('radii', rtest);
- % optional
- mtest = @(n) validateattributes(n, {'double'}, {'real' 'nonnegative' 'integer' 'scalar'});
- ip.addOptional('margin', 0, mtest);
- % parameter/value pairs
- stest = @(s) validateattributes(s, {'double'}, {'real' 'nonnegative' 'scalar'});
- ip.addParamValue('smoothxy', 0, stest);
- ip.addParamValue('smoothr', 0, stest);
- ip.addParamValue('threshold', [], stest);
- nptest = @(n) validateattributes(n, {'double'}, {'real' 'positive' 'integer' 'scalar'});
- ip.addParamValue('npeaks', [], nptest);
- nhtest = @(n) validateattributes(n, {'double'}, {'odd' 'positive' 'scalar'});
- ip.addParamValue('nhoodxy', [], nhtest);
- ip.addParamValue('nhoodr', [], nhtest);
- ip.parse(h, radii, varargin{:});
- params = ip.Results;
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement