checkNumArgs

PURPOSE ^

Helper utility for checking numeric vector arguments.

SYNOPSIS ^

function [ x, er ] = checkNumArgs( x, siz, intFlag, signFlag )

DESCRIPTION ^

 Helper utility for checking numeric vector arguments.

 Runs a number of tests on the numeric array x.  Tests to see if x has all
 integer values, all positive values, and so on, depending on the values
 for intFlag and signFlag. Also tests to see if the size of x matches siz
 (unless siz==[]).  If x is a scalar, x is converted to a array simply by
 creating a matrix of size siz with x in each entry.  This is why the
 function returns x.  siz=M is equivalent to siz=[M M]. If x does not
 satisfy some criteria, an error message is returned in er. If x satisfied
 all the criteria er=''.  Note that error('') has no effect, so can use:
  [ x, er ] = checkNumArgs( x, ... ); error(er);
 which will throw an error only if something was wrong with x.

 USAGE
  [ x, er ] = checkNumArgs( x, siz, intFlag, signFlag )

 INPUTS
  x           - numeric array
  siz         - []: does not test size of x
              - [if not []]: intended size for x
  intFlag     - -1: no need for integer x
                 0: error if non integer x
                 1: error if non odd integers
                 2: error if non even integers
  signFlag    - -2: entires of x must be strictly negative
                -1: entires of x must be negative
                 0: no contstraints on sign of entries in x
                 1: entires of x must be positive
                 2: entires of x must be strictly positive

 OUTPUTS
  x   - if x was a scalar it may have been replicated into a matrix
  er  - contains error msg if anything was wrong with x

 EXAMPLE
  a=1; [a, er]=checkNumArgs( a, [1 3], 2, 0 ); a, error(er)

 See also NARGCHK

 Piotr's Computer Vision Matlab Toolbox      Version 2.0
 Copyright 2014 Piotr Dollar.  [pdollar-at-gmail.com]
 Licensed under the Simplified BSD License [see external/bsd.txt]

Generated by m2html © 2003