time_event.hタイムイベント管理モジュール [詳細]
#include "task.h"
#include "class.h"
time_event.hのインクルード依存関係図
このグラフは、どのファイルから直接、間接的にインクルードされているかを示しています。
ソースコードを見る。
|
データ構造 |
| struct | time_event_block |
| struct | time_event_node |
| | タイムイベントヒープ中のノードのデータ型の定義 [詳細]
|
マクロ定義 |
| #define | TMAX_RELTIM ((((EVTTIM) 1) << (sizeof(EVTTIM) * CHAR_BIT - 1)) - 1) |
| | 相対時間(RELTIM)に指定できる最大値
|
| #define | base_time ((EVTTIM)(next_time + (next_subtime > 0 ? 1 : 0))) |
型定義 |
| typedef time_event_node | TMEVTN |
| | 前方参照
|
| typedef time_event_block | TMEVTB |
| typedef UW | EVTTIM |
| | イベント発生時刻のデータ型の定義
|
| typedef void(* | CBACK )(VP) |
| | タイムイベントブロックのデータ型の定義
|
関数 |
| void | tmevt_initialize (void) |
| | タイムイベント管理モジュールの初期化
|
| UINT | tmevt_up (CCB *ccb, UINT index, EVTTIM time) |
| | タイムイベントの挿入位置の探索
|
| UINT | tmevt_down (CCB *ccb, UINT index, EVTTIM time) |
| void | tmevtb_insert (CCB *ccb, TMEVTB *tmevtb, EVTTIM time) |
| | タイムイベントヒープへの登録と削除
|
| void | tmevtb_delete (CCB *ccb, TMEVTB *tmevtb) |
| Inline void | tmevtb_enqueue (CCB *ccb, TMEVTB *tmevtb, RELTIM time, CBACK callback, VP arg) |
| | タイムイベントブロックの登録(相対時間指定)
|
| Inline void | tmevtb_enqueue_evttim (CCB *ccb, TMEVTB *tmevtb, EVTTIM time, CBACK callback, VP arg) |
| | タイムイベントブロックの登録(イベント発生時刻指定)
|
| Inline void | tmevtb_dequeue (CCB *ccb, TMEVTB *tmevtb) |
| | タイムイベントブロックの登録解除
|
変数 |
| TMEVTN | tmevt_heap [] |
| | タイムイベントヒープ(kernel_cfg.c)
|
| SYSTIM | systim_offset |
| | システム時刻のオフセット
|
| SYSTIM | current_time |
| | 現在のシステム時刻(単位: ミリ秒)
|
| SYSTIM | next_time |
| | 次のタイムティックのシステム時刻(単位: 1ミリ秒)
|
| UINT | next_subtime |
| UINT | last_index |
| | タイムイベントヒープの最後の使用領域のインデックス
|
説明
タイムイベント管理モジュール
time_event.h で定義されています。
マクロ定義
| #define TMAX_RELTIM ((((EVTTIM) 1) << (sizeof(EVTTIM) * CHAR_BIT - 1)) - 1) |
|
型定義
|
|
イベント発生時刻のデータ型の定義
EVTTIM は,RELTIM として指定できる範囲よりも広い範囲を表現できる必 要がある.スタンダードプロファイルでは,RELTIM が 16bit 以上でなけ ればならないため,EVTTIM は 17bit 以上であることが必要である.その ため,16bit の場合がある UINT ではなく,UW に定義している.
time_event.h の 66 行で定義されています。 |
関数
| void tmevt_initialize |
( |
void |
|
) |
|
|
| void tmevtb_delete |
( |
CCB * |
ccb, |
|
|
TMEVTB * |
tmevtb |
|
) |
|
|
| Inline void tmevtb_dequeue |
( |
CCB * |
ccb, |
|
|
TMEVTB * |
tmevtb |
|
) |
|
|
変数
|
|
現在のシステム時刻(単位: ミリ秒)
システム起動時に 0 に初期化され,以降,isig_tim が呼ばれる度に単調 に増加する.set_tim によって変更されない. |
|
|
タイムイベントヒープの最後の使用領域のインデックス
タイムイベントヒープに登録されているタイムイベントの数に一致する. |
|
|
次のタイムティックのシステム時刻(単位: 1ミリ秒)
|
Copyright © 2006 by TAKAGI Nobuhisa.
このページは Mon Apr 3 23:49:19 2006 に Doxygen によって生成されました。
|
|