# fevalMats

## PURPOSE

Used to apply the same operation to all .mat files in given directory.

## SYNOPSIS

function X = fevalMats( fHandle, matCont, prm, srcDir, prefix )

## DESCRIPTION

     Used to apply the same operation to all .mat files in given directory.

     For each mat in srcDir, loads the mat file, extracts the variables
     denoted by matCont, applies the function fHandle and stores the
     result.  matCont must be a cell array of strings, where each string
     denotes the variable stored in the mat files. For example, if each mat
     file contains two variables y and z, then matCont should be
     {'y','z'}.  For long operations shows progress info.

     fHandle must point to a function that takes two inputs: vals and prm.
     vals is a cell array that contains the values for the variables denoted
     by matCont and contained in the mat file, and prm are the
     additional static parameters passed to fevalArrays.  Continuing the
     example above vals would be {y,z} - (use deal to extract):
      x=feval(fHandle,{y,z},prm)
     Each returned x must have the same dimensions, X is a concatentation of
     the returned x's along the (d+1) dimension.

     USAGE
      X = fevalMats( fHandle, matCont, prm, srcDir, [prefix] )

     INPUTS
      fHandle  - function to apply to contents of each mat file [see above]
      matCont  - cell array of strings of expected contents of each mat file
      prm      - cell array of additional parameters to fHandle (may be {})
      srcDir   - directory containg mat files
      prefix   - [] only consider mat files in srcDir of the form prefix_*.mat

     OUTPUTS
      X        - output array [see above]

     EXAMPLE

     See also FEVALIMAGES, FEVALARRAYS, DEAL

     Piotr's Image&Video Toolbox      Version 2.0
     Copyright 2012 Piotr Dollar.  [pdollar-at-caltech.edu]
     Please email me if you find bugs, or have suggestions or questions!
     Licensed under the Simplified BSD License [see external/bsd.txt]