クラス Onikiri::SampleHookModule

#include <SampleHookModule.h>

Onikiri::SampleHookModuleに対する継承グラフ

Inheritance graph
[凡例]
Onikiri::SampleHookModuleのコラボレーション図

Collaboration graph
[凡例]
すべてのメンバ一覧

Public メソッド

virtual void Finalize ()
virtual void Initialize (InitPhase phase)
void OnCycleBegin ()
void OnCycleEvaluate ()
void OnCycleProcess ()
void OnOpDispatch (HookParameter< Dispatcher, Dispatcher::DispatchHookParam > *param)
void OnOpExecutionFinish (OpIterator op, OpFinishEvent::FinishHookParam *param)
void OnOpFetch (Fetcher::FetchHookParam *param)
void OnOpFlushed (HookParameter< InorderList > *param)
void OnOpIssue (HookParameter< Scheduler > *param)
void OnOpRename (HookParameter< Renamer > *param)
void OnOpRescheduled (OpIterator op, Scheduler::RescheduleHookParam *param)
void OnOpRetire (HookParameter< Retirer > *param)
 SampleHookModule ()
virtual ~SampleHookModule ()

説明

SampleHookModule.h61 行で定義されています。


コンストラクタとデストラクタ

Onikiri::SampleHookModule::SampleHookModule (  )  [inline]

SampleHookModule.h130 行で定義されています。

00130 {};

virtual Onikiri::SampleHookModule::~SampleHookModule (  )  [inline, virtual]

SampleHookModule.h131 行で定義されています。

00131 {};


関数

virtual void Onikiri::SampleHookModule::Finalize (  )  [inline, virtual]

Onikiri::PhysicalResourceNodeを再定義しています。

SampleHookModule.h195 行で定義されています。

参照先 Onikiri::PhysicalResourceNode::ReleaseParam().

00196         {
00197             // 'ReleaseParam()' must be called in 'Finalize()'.
00198             ReleaseParam();
00199         };

関数の呼び出しグラフ:

virtual void Onikiri::SampleHookModule::Initialize ( InitPhase  phase  )  [inline, virtual]

SampleHookModule.h134 行で定義されています。

参照先 Onikiri::HookType::HOOK_AFTEROnikiri::HookType::HOOK_BEFOREOnikiri::PhysicalResourceNode::INIT_POST_CONNECTIONOnikiri::PhysicalResourceNode::INIT_PRE_CONNECTIONOnikiri::ParamExchange::LoadParam()OnCycleBegin()OnCycleEvaluate()OnCycleProcess()OnOpDispatch()OnOpExecutionFinish()OnOpFetch()OnOpFlushed()OnOpIssue()OnOpRename()OnOpRescheduled()OnOpRetire()Onikiri::SimulationSystem::s_cycleBeginHookOnikiri::SimulationSystem::s_cycleEvaluateHookOnikiri::SimulationSystem::s_cycleUpdateHookOnikiri::Dispatcher::s_dispatchUpdateHookOnikiri::Fetcher::s_fetchHookOnikiri::OpFinishEvent::s_finishHookOnikiri::Scheduler::s_issueHookOnikiri::InorderList::s_opFlushHookOnikiri::Renamer::s_renameUpdateHookOnikiri::Scheduler::s_rescheduleHookOnikiri::Retirer::s_retireHook.

00135         {
00136             if( phase == INIT_PRE_CONNECTION ){
00137                 // After constructing and before object connection.
00138                 // LoadParam() must be called in this phase or later.
00139                 LoadParam();
00140             }
00141             else if ( phase == INIT_POST_CONNECTION ){
00142                 // After connection
00143 
00144                 // Register the handlers to the hooks.
00145 
00146                 // To pipeline stages.
00147                 Fetcher::s_fetchHook.Register( 
00148                     this, &SampleHookModule::OnOpFetch, 0, HookType::HOOK_AFTER 
00149                 );
00150                 Renamer::s_renameUpdateHook.Register( 
00151                     this, &SampleHookModule::OnOpRename, 0, HookType::HOOK_AFTER 
00152                 );
00153                 Dispatcher::s_dispatchUpdateHook.Register( 
00154                     this, &SampleHookModule::OnOpDispatch, 0, HookType::HOOK_AFTER 
00155                 );
00156                 Scheduler::s_issueHook.Register(
00157                     this, &SampleHookModule::OnOpIssue, 0, HookType::HOOK_AFTER
00158                 );
00159                 OpFinishEvent::s_finishHook.Register(
00160                     this, &SampleHookModule::OnOpExecutionFinish, 0, HookType::HOOK_AFTER 
00161                 );
00162                 
00163                 // A hook handler for retirement needs to be set with HOOK_BEFORE,
00164                 // because 'op' cannot be used after retirement (HOOK_AFTER).
00165                 Retirer::s_retireHook.Register(
00166                     this, &SampleHookModule::OnOpRetire, 0, HookType::HOOK_BEFORE
00167                 );
00168 
00169 
00170                 // Flush/Re-schedule
00171                 // 'OnOpFlushed()' needs to be set with HOOK_BEFORE for the similar
00172                 // reason in retirement.
00173                 InorderList::s_opFlushHook.Register(
00174                     this, &SampleHookModule::OnOpFlushed, 0, HookType::HOOK_BEFORE
00175                 );
00176                 Scheduler::s_rescheduleHook.Register(
00177                     this, &SampleHookModule::OnOpRescheduled, 0, HookType::HOOK_AFTER
00178                 );
00179 
00180 
00181                 // Cycle hook handlers
00182                 SimulationSystem::s_cycleBeginHook.Register(
00183                     this, &SampleHookModule::OnCycleBegin, 0, HookType::HOOK_AFTER
00184                 );
00185                 SimulationSystem::s_cycleEvaluateHook.Register(
00186                     this, &SampleHookModule::OnCycleEvaluate, 0, HookType::HOOK_AFTER
00187                 );
00188                 SimulationSystem::s_cycleUpdateHook.Register(
00189                     this, &SampleHookModule::OnCycleProcess, 0, HookType::HOOK_AFTER
00190                 );
00191 
00192             }
00193         }

関数の呼び出しグラフ:

void Onikiri::SampleHookModule::OnCycleBegin (  )  [inline]

SampleHookModule.h115 行で定義されています。

参照先 Onikiri::g_envOnikiri::Environment::Print().

参照元 Initialize().

00116         {
00117             g_env.Print( "--- Cycle Begin\n" );
00118         }

関数の呼び出しグラフ:

Here is the caller graph for this function:

void Onikiri::SampleHookModule::OnCycleEvaluate (  )  [inline]

SampleHookModule.h120 行で定義されています。

参照先 Onikiri::g_envOnikiri::Environment::Print().

参照元 Initialize().

00121         {
00122             g_env.Print( "On a cycle evaluation phase.\n" );
00123         }

関数の呼び出しグラフ:

Here is the caller graph for this function:

void Onikiri::SampleHookModule::OnCycleProcess (  )  [inline]

SampleHookModule.h125 行で定義されています。

参照先 Onikiri::g_envOnikiri::Environment::Print().

参照元 Initialize().

00126         {
00127             g_env.Print( "On a cycle process phase.\n" );
00128         }

関数の呼び出しグラフ:

Here is the caller graph for this function:

void Onikiri::SampleHookModule::OnOpDispatch ( HookParameter< Dispatcher, Dispatcher::DispatchHookParam > *  param  )  [inline]

SampleHookModule.h80 行で定義されています。

参照先 Onikiri::g_envOnikiri::HookParameter< CallerT, ParamT >::GetOp()Onikiri::Environment::Print().

参照元 Initialize().

00081         {
00082             g_env.Print( "op(%s) is dispatched.\n", param->GetOp()->ToString(0).c_str() );
00083         }

関数の呼び出しグラフ:

Here is the caller graph for this function:

void Onikiri::SampleHookModule::OnOpExecutionFinish ( OpIterator  op,
OpFinishEvent::FinishHookParam param 
) [inline]

SampleHookModule.h90 行で定義されています。

参照先 Onikiri::g_envOnikiri::OpIterator::IsAlive()Onikiri::Environment::Print().

参照元 Initialize().

00091         {
00092             if( op.IsAlive() ){
00093                 g_env.Print( "op(%s) is executed.\n", op->ToString(0).c_str() );
00094             }
00095             else{
00096                 g_env.Print( "op is flushed.\n" );
00097             }
00098         }

関数の呼び出しグラフ:

Here is the caller graph for this function:

void Onikiri::SampleHookModule::OnOpFetch ( Fetcher::FetchHookParam param  )  [inline]

SampleHookModule.h65 行で定義されています。

参照先 Onikiri::g_envOnikiri::OpIterator::IsNull()Onikiri::Fetcher::FetchHookParam::opOnikiri::Environment::Print().

参照元 Initialize().

00066         {
00067             if( param->op.IsNull() ){
00068                 g_env.Print( "op is not fetched yet.\n" );
00069             }
00070             else{
00071                 g_env.Print( "op(%s) is fetched.\n", param->op->ToString(0).c_str() );
00072             }
00073         }

関数の呼び出しグラフ:

Here is the caller graph for this function:

void Onikiri::SampleHookModule::OnOpFlushed ( HookParameter< InorderList > *  param  )  [inline]

SampleHookModule.h105 行で定義されています。

参照先 Onikiri::g_envOnikiri::HookParameter< CallerT, ParamT >::GetOp()Onikiri::Environment::Print().

参照元 Initialize().

00106         {
00107             g_env.Print( "op(%s) is flushed.\n", param->GetOp()->ToString(0).c_str() );
00108         }

関数の呼び出しグラフ:

Here is the caller graph for this function:

void Onikiri::SampleHookModule::OnOpIssue ( HookParameter< Scheduler > *  param  )  [inline]

SampleHookModule.h85 行で定義されています。

参照先 Onikiri::g_envOnikiri::HookParameter< CallerT, ParamT >::GetOp()Onikiri::Environment::Print().

参照元 Initialize().

00086         {
00087             g_env.Print( "op(%s) is issued.\n", param->GetOp()->ToString(0).c_str() );
00088         }

関数の呼び出しグラフ:

Here is the caller graph for this function:

void Onikiri::SampleHookModule::OnOpRename ( HookParameter< Renamer > *  param  )  [inline]

SampleHookModule.h75 行で定義されています。

参照先 Onikiri::g_envOnikiri::HookParameter< CallerT, ParamT >::GetOp()Onikiri::Environment::Print().

参照元 Initialize().

00076         {
00077             g_env.Print( "op(%s) is renamed.\n", param->GetOp()->ToString(0).c_str() );
00078         }

関数の呼び出しグラフ:

Here is the caller graph for this function:

void Onikiri::SampleHookModule::OnOpRescheduled ( OpIterator  op,
Scheduler::RescheduleHookParam param 
) [inline]

SampleHookModule.h110 行で定義されています。

参照先 Onikiri::g_envOnikiri::Environment::Print().

参照元 Initialize().

00111         {
00112             g_env.Print( "op(%s) is re-scheduled.\n", op->ToString(0).c_str() );
00113         }

関数の呼び出しグラフ:

Here is the caller graph for this function:

void Onikiri::SampleHookModule::OnOpRetire ( HookParameter< Retirer > *  param  )  [inline]

SampleHookModule.h100 行で定義されています。

参照先 Onikiri::g_envOnikiri::HookParameter< CallerT, ParamT >::GetOp()Onikiri::Environment::Print().

参照元 Initialize().

00101         {
00102             g_env.Print( "op(%s) is retired.\n", param->GetOp()->ToString(0).c_str() );
00103         }

関数の呼び出しグラフ:

Here is the caller graph for this function:


このクラスの説明は次のファイルから生成されました:
Onikiri2に対してTue Jun 18 15:19:55 2013に生成されました。  doxygen 1.4.7