• 検索結果がありません。

アラームハンドラ

ドキュメント内 px100.book (ページ 100-105)

第 3 章 従来機能の変更 25

3.7 時間管理機能

3.7.3 アラームハンドラ

CRA_ALM

アラームハンドラの生成(静的 API,アクセス許可指定)

cra_alm

アラームハンドラの生成(アクセス許可指定)

acra_alm

アラームハンドラの生成(ID番号自動割付け,アクセス許可指定)

【静的 API】

CRA_ALM ( ID almid, { ATR almatr, VP_INT exinf, FP almhdr }, ACVCT acvct ) ;

【 C言語 API】

ER ercd = cra_alm ( ID almid, T_CALM *pk_calm, ACVCT *p_acvct ) ;

ER_ID almid = acra_alm ( T_CALM *pk_calm, ACVCT *p_acvct ) ;

【パラメータ】

ID almid 生成対象のアラームハンドラの ID番号

T_CALM * pk_calm アラームハンドラ生成情報を入れたパケット

へのポインタ(静的 APIではパケットの内容を 直接記述する)

ACVCT acvct アラームハンドラのアクセス許可ベクタ

pk_calmの内容( T_CALM型)

ATR almatr アラームハンドラ属性

VP_INT exinf アラームハンドラの拡張情報

FP almhdr アラームハンドラの起動番地

(実装独自に他の情報を追加してもよい)

【リターンパラメータ】

cra_almの場合

ER ercd 正常終了( E_OK)またはエラーコード acra_almの場合

ER_ID almid 生成したアラームハンドラの ID番号(正の値)

またはエラーコード

【エラーコード】

E_ID 不正 ID番号( almidが不正あるいは使用できない)

E_NOID ID番号不足(割付け可能なアラームハンドラ IDがない)

E_RSATR 予約属性( almatrが不正あるいは使用できない)

E_PAR パラメータエラー( pk_calm,almhdr, p_acvct,acvct が不正)

E_OBJ オブジェクト状態エラー(対象アラームハンドラが登録

済み)

【機能】

almidで指定される ID番号を持つアラームハンドラを,pk_calmで指定される アラームハンドラ生成情報に基づいて生成する. CRE_ALM/ cre_alm/ acre_almとの違いは,生成するアラームハンドラに, acvctで指定されるアク セス許可ベクタを設定することのみである.

sac_alm

アラームハンドラのアクセス許可ベクタの変更

【 C言語 API】

ER ercd = sac_alm ( ID almid, ACVCT *p_acvct ) ;

【パラメータ】

ID almid 変更対象のアラームハンドラの ID番号

ACVCT acvct アラームハンドラのアクセス許可ベクタ

【リターンパラメータ】

ER ercd 正常終了( E_OK)またはエラーコード

【エラーコード】

E_ID 不正 ID番号( almidが不正あるいは使用できない)

E_PAR パラメータエラー( p_acvct, acvctが不正)

E_NOEXS オブジェクト未生成(対象アラームハンドラが未登録)

【機能】

almidで指定されるアラームハンドラに対するアクセス許可ベクタを, acvct

で指定されるアクセス許可ベクタに設定する.

ref_alm

アラームハンドラの状態参照

【 C言語 API】

ER ercd = ref_alm ( ID almid, T_RALM *pk_ralm ) ;

【パラメータ】

ID almid 状態参照対象のアラームハンドラの ID番号

T_RALM * pk_ralm アラームハンドラ状態を返すパケットへのポ

インタ

【リターンパラメータ】

ER ercd 正常終了( E_OK)またはエラーコード pk_ralmの内容( T_RALM型)

STAT almstat アラームハンドラの動作状態

RELTIM lefttim アラームハンドラの起動時刻までの時間

ACVCT acvct アラームハンドラのアクセス許可ベクタ

(実装独自に他の情報を追加してもよい)

【エラーコード】

E_ID 不正 ID番号( almidが不正あるいは使用できない)

E_PAR パラメータエラー( pk_ralmが不正)

E_NOEXS オブジェクト未生成(対象アラームハンドラが未登録)

【機能】

almidで指定されるアラームハンドラに関する状態を参照し, pk_ralmで指定 されるパケットに返す. µITRON4.0仕様との違いは, acvctに対象アラームハ ンドラのアクセス許可ベクタを返すことのみである.

ドキュメント内 px100.book (ページ 100-105)