integer parameters to C MEX s function

function mxGetPr(ssGetSFcnParam(S,0)) can get REAL parameter from the mask of simulink block. is there any function can get integer paramter from simulink block mask, or how to convert a real number to integer in C MEX s function.
Thanks a lot.
Fengming

 Risposta accettata

Kaustubha Govind
Kaustubha Govind il 19 Apr 2012

0 voti

I think you need to use mxGetData(ssGetSFcnParam(S,0)) instead and cast the returned void-pointer to an int pointer. You probably want to throw an error if ssGetDTypeIdFromMxArray(ssGetSFcnParam(S,0))!=SS_INT32 (or SS_INT8, SS_UINT8, SS_INT16, SS_UINT16, SS_UINT32 depending on what type you're expecting).
mxGetPr must only be used if the parameter is a double value.

2 Commenti

Thank you. is there any help documents or manual including the function list? i mean, if i want some functions, how could i find it?
Yes, see http://www.mathworks.com/help/releases/R2011b/toolbox/simulink/sfg/f9-5492.html for SimStruct-specific functions, and http://www.mathworks.com/help/releases/R2011b/techdoc/apiref/bqoqnz0.html#bqoqobe-1 for mxArray related functions.

Accedi per commentare.

Più risposte (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by