C-MEX S-Function でデータタイプが可変​の信号を入出力するに​は、どのように記述す​れば良いですか?

2 ビュー (過去 30 日間)
MathWorks Support Team
MathWorks Support Team 2013 年 10 月 25 日
編集済み: MathWorks Support Team 2021 年 3 月 11 日
C-MEX S-Function の入力信号のデータタイプが可変である場合、どのように記述して S-Function を作成すれば良いか教えて下さい。

採用された回答

MathWorks Support Team
MathWorks Support Team 2021 年 3 月 11 日
編集済み: MathWorks Support Team 2021 年 3 月 11 日
入出力ポートのデータタイプを 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 件)

カテゴリ

Help Center および File ExchangeAuthor Blocks Using C MEX S-Functions についてさらに検索

製品


リリース

R2010b

Community Treasure Hunt

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

Start Hunting!