mxSetProperty (C and Fortran)
Set value of public property of MATLAB object
C Syntax
#include "matrix.h" void mxSetProperty(mxArray *pa, mwIndex index, const char *propname, const mxArray *value);
Fortran Syntax
#include "fintrf.h" subroutine mxSetProperty(pa, index, propname, value) mwPointer pa, value mwIndex index character*(*) propname
Arguments
pa
Pointer to an
mxArray
which is an object.index
Index of the desired element of the object array.
In C, the first element of an
mxArray
has anindex
of0
. Theindex
of the last element isN-1
, whereN
is the number of elements in the array. In Fortran, the first element of anmxArray
has anindex
of1
. Theindex
of the last element isN
, whereN
is the number of elements in the array.propname
Name of the property whose value you are assigning.
- value
Pointer to the
mxArray
you are assigning.
Description
Use mxSetProperty
to assign a value
to
the specified property. In pseudo-C terminology, mxSetProperty
performs
the assignment:
pa[index].propname = value;
Property propname
must be an existing, public
property and index
must be within the bounds of
the mxArray
. To test the index value, use mxGetNumberOfElements
or mxGetM
and mxGetN
functions.
mxSetProperty
makes a copy of the value before assigning it as the new
property value. If the property uses a large amount of memory, then making a copy might
be a concern. There must be sufficient memory in the heap to hold the copy of the
value.
Limitations
mxSetProperty
is not supported for standalone applications, such as applications built with the MATLAB® engine API.Properties of type
datetime
are not supported.
Version History
Introduced in R2008a