Set complex data elements in mxUINT8_CLASS
array
#include "matrix.h" int mxSetComplexUint8s(mxArray *pa, mxComplexUint8 *dt);
Use mxSetComplexUint8s
to set mxComplexUint8
data in the specified array.
All mxCreate
* functions allocate heap space to hold data.
Therefore, you do not ordinarily use this function to initialize the elements of an
array. Rather, call the function to replace existing values with new values.
This function does not free memory allocated for existing data. To free existing
memory, call mxFree
on the pointer returned by
mxGetComplexUint8s
.
Refer to the
arrayFillSetComplexPr.c
example in the
folder which copies existing complex numeric data into an matlabroot
/extern/examples/refbookmxArray
.
The data in the example is defined as mxComplexDouble
. You can use
this example as a pattern for any complex C numeric type. To modify this example for
complex uint8
data:
Declare the data variables as mxComplexUint8
Call mxCreateNumericMatrix
with the numeric type
mxUINT8_CLASS
Replace mxSetDoubles
with
mxSetComplexUint8s
to put the C array into an
mxArray
This function is available in the interleaved complex API. To build
myMexFile.c
using this function, type:
mex -R2018a myMexFile.c