C-MEX S-Function でデータタイプが可変の信号を入出力するには、どのように記述すれば良いですか?
2 views (last 30 days)
Show older comments
MathWorks Support Team
on 25 Oct 2013
Edited: MathWorks Support Team
on 11 Mar 2021
C-MEX S-Function の入力信号のデータタイプが可変である場合、どのように記述して S-Function を作成すれば良いか教えて下さい。
Accepted Answer
MathWorks Support Team
on 11 Mar 2021
Edited: MathWorks Support Team
on 11 Mar 2021
入出力ポートのデータタイプを ssSetInputPortDataType 、 ssSetOutputPortDataType を使って DYNAMICALLY_TYPED に設定し、出力関数内においては、 ssGetInputportDataType 及び ssGetOutputPortDataType を使って取得したデータタイプ ID ごと、入出力変数のデータタイプをキャストしながらの場合分け処理を記述することで実現可能です。
各 API については、次の URL のページよりドキュメントを参照することができます。
ssSetInputPortDataType
ssSetOutputPortDataType
ssGetInputPortDataType
ssGetOutputPortDataType
一例として、ソース、 MDL ファイルが"関連ドキュメント"よりダウンロード可能です。
コマンドラインより、
>> mex mysfcn_ddtype.c
とタイプインして MEX ファイルを作成後、シミュレーションの実行、結果を確認することができます。
この例の S-Function では、入力に double, single, int16 のいずれかのデータを許容することを想定しています。
0 Comments
More Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!