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 によって生成されました。
|
|