Mercurial > octave-nkf
view examples/myprop.c @ 18575:f57148641869 gui-release
polyeig.m: Overhaul function for Matlab compatibility (bug #41865).
* NEWS: Announce change in return format of polyeig.
* polyeig.m: Return a row vector of eigenvalues rather than a matrix with
eigenvalues on the diagonal. Improve docstring. Improve input validation.
Add %!error tests for input validation.
author | Rik <rik@octave.org> |
---|---|
date | Sat, 15 Mar 2014 16:29:46 -0700 |
parents | 224e76250443 |
children |
line wrap: on
line source
#include "mex.h" void mexFunction (int nlhs, mxArray* plhs[], int nrhs, const mxArray* prhs[]) { double handle; char property[256]; if (nrhs < 2 || nrhs > 3) mexErrMsgTxt ("incorrect number of arguments"); if (!mxIsDouble (prhs[0])) mexErrMsgTxt ("handle expected to be a double scalar"); if (!mxIsChar (prhs[1])) mexErrMsgTxt ("expected property to be a string"); handle = mxGetScalar (prhs[0]); mxGetString (prhs[1], property, 256); plhs[0] = mxDuplicateArray (mexGet (handle, property)); if (nrhs == 3) if (mexSet (handle, property, mxDuplicateArray (prhs[2]))) mexErrMsgTxt ("failed to set property"); }