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

 Accepted Answer

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 Comments

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.

Sign in to comment.

More Answers (0)

Categories

Find more on Simulink in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!