view examples/myfeval.c @ 18792:6d14aa793e0a

profshow.m: Use current profiler data if there is no input data. * profshow.m: Redo docstring. If no input data, call profile ('info') and use the current profiler dataset. Use 'descend' option to sort to make code clearer. Get rod of for loop for better performance.
author Rik <rik@octave.org>
date Thu, 15 May 2014 09:31:43 -0700
parents d1e16bdb3958
children
line wrap: on
line source

#include "mex.h"

void
mexFunction (int nlhs, mxArray* plhs[],
             int nrhs, const mxArray* prhs[])
{
  char *str;

  mexPrintf ("Starting file myfeval.mex\n");

  mexPrintf ("I have %d inputs and %d outputs\n", nrhs, nlhs);

  if (nrhs < 1 || ! mxIsString (prhs[0]))
    mexErrMsgTxt ("ARG1 must be a function name");

  str = mxArrayToString (prhs[0]);

  mexPrintf ("I'm going to call the function %s\n", str);

  if (nlhs == 0)
    nlhs = 1;  // Octave's automatic 'ans' variable

  /* Cast prhs just to get rid of 'const' qualifier and stop compile warning */
  mexCallMATLAB (nlhs, plhs, nrhs-1, (mxArray**)prhs+1, str);

  mxFree (str);
}