AG903ライブラリリファレンス
内容インデックスホーム
前へ上へ次へ
AG903_OSWprRefMpl 関数

可変長メモリブロックの状態参照

Syntax
C++
int32_t AG903_OSWprRefMpl(int32_t mplid, AG903_OSWRMpl* pk_rmpl);
引数 
説明 
int32_t mplid 
[in] ID番号 
AG903_OSWRMpl* pk_rmpl 
[out] 状態情報返却アドレス 

可変長メモリブロックの状態参照結果

返値の詳細 
説明 
正常終了 
-AG903_EINVAL 
引数異常 
-AG903_EPERM 
不正使用(割り込みからのCALLなど) 

可変長メモリブロックの状態参照をします。 (uITRON4.0実装時、ref_mplを使用します。)

実際に確保可能なメモリサイズは取得するメモリのアライン調節や管理領域のため この関数が返したサイズよりも少なくなります。 

少なくなるサイズの目安は AG903_OSWprGetMplAlign を参照して下さい。

1: int32_t AG903_OSWprRefMpl(int32_t mplid, AG903_OSWRMpl* pk_rmpl) 2: { 3: ER ercd; 4: int32_t retval; 5: T_RMPL rmpl; 6: 7: if(NULL == pk_rmpl) { 8: return -AG903_EINVAL; 9: } 10: 11: ercd = ref_mpl((ID)mplid, &rmpl); 12: OSW_SetLastErcd(ercd); 13: retval = OSW_ChgErcd(ercd); 14: 15: if(AG903_ENONE == retval) { 16: pk_rmpl->wtskid = rmpl.wtskid; 17: pk_rmpl->fmplsz = rmpl.fmplsz; 18: pk_rmpl->fblksz = (rmpl.fblksz > OSWBLKINF_SIZE) ? (rmpl.fblksz - OSWBLKINF_SIZE) : 0; 19: } 20: 21: return retval; 22: }
Copyright (c) 2017-2025 Axell Corporation. All rights reserved.