TRunManager class Reference

メインページ モジュール クラス階層 アルファベット順一覧 構成 ファイル一覧 構成メンバ ファイルメンバ 関連ページ 例

# クラス TRunManager の解説
[Run Category]

これはランを管理するためのクラスです. [詳細]

`#include <TRunManager.hh>`

TRunManagerのコラボレーション図

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

## Public メソッド
| TRunManager (TUserInterface *ui=0)
| TUserInterfaceクラスを継承したオブジェクトを渡して下さい.
virtual | ~TRunManager ()
| 必ず最後に呼ばれなくてはなりません.
TUserInterface * | GetUserInterface () const
| theUserInterfaceへのポインタを得る
const TRun & | GetRun () const
| theRunへの参照を得る
TRun & | GetRun ()
| theRunへの参照を得る
Tint | GetRunID () const
| theRunIDを得る
Tvoid | SetRunID (Tint id)
| theRunIDを変更する
TSystemAction * | GetSystemAction () const
| theSystemActionへのポインタを得る
TRunAction * | GetRunAction () const
| theRunActionへのポインタを得る
TEventManager * | GetEventManager () const
| theEventManagerへのポインタを得る
Tvoid | SetUserInterface (TUserInterface *ui)
| theUserInterfaceを設定する
Tint | SetUserCommand (TCommand *command)
| コマンドの登録を行なう
Tvoid | SetRun (const TRun &run)
| theRunを変更する
Tvoid | SetSystemAction (TSystemAction *action)
| theSystemActionを設定する
Tvoid | SetRunAction (TRunAction *action)
| theRunActionを設定する
Tvoid | SetEventAction (TEventAction *action)
| theEventActionを設定する
Tvoid | SetEventManager (TEventManager *manager)
| theEventManagerを設定する
Tstatus_t | GetStatus () const
| theStatus を得る
Tvoid | SetStatus (Tstatus_t status)
| theStatus を変更する
Tthread_t | GetThreadOfEventLoop () const
| イベントループを実行しているスレッドのID(theThreadOfEventLoop)を得る
Tvoid | SetThreadOfEventLoop (Tthread_t thread)
| イベントループを実行しているスレッドのID(theThreadOfEventLoop)を変更する
TSoftwareRunInformationModule * | GetRunInformationModule () const
| theRunInformationModuleへのポインタを得る
TAnalysisManager * | GetAnalysisManager () const
| theAnalysisManagerへのポインタを得る
const TSystemTimer & | GetRunTimer () const
| theRunTimerへの参照を得る
TSystemTimer & | GetRunTimer ()
| theRunTimerへの参照を得る
Tvoid | SetRunTimer (const TSystemTimer &timer)
| theRunTimerを変更する
const TSystemClock & | GetRunClock () const
| theRunClockへの参照を得る
TSystemClock & | GetRunClock ()
| theRunClockへの参照を得る
Tvoid | SetRunClock (const TSystemClock &clock)
| theRunClockを変更する
TReadoutBookDefinition * | GetReadoutBookDefinition () const
| theReadoutBookDefinitionを得る
TReadoutBook * | GetReadoutBook () const
| theReadoutBookを得る
TCrateDefinition * | GetCrateDefinition () const
TCrate * | GetCrate () const
Tvoid | SetReadoutBookDefinition (TReadoutBookDefinition *definition)
Tvoid | SetCrateDefinition (TCrateDefinition *definition)
const TEnvironmentVariableTable & | GetEnvironmentVariableTable () const
TEnvironmentVariableTable & | GetEnvironmentVariableTable ()
Tvoid | SetEnvironmentVariableTable (const TEnvironmentVariableTable &table)
Tint | GetEventLimit () const
Tvoid | SetEventLimit (Tint nevents)
virtual Tvoid | SessionStart ()
virtual Tvoid | ShowStatus () const
virtual Tvoid | PopupLogo () const
virtual Tvoid | PopdownLogo () const
virtual Tvoid | PrintAuthorInformation (Tostream &tos=Tcout) const
virtual Tvoid | ShutdownRun ()
virtual Tvoid | StartRun ()
virtual Tvoid | StartRun (Tint runid)
virtual Tvoid | StopRun ()
virtual Tvoid | SuspendRun ()
virtual Tvoid | ResumeRun ()
virtual Tvoid | SetRunInformationModule (TSoftwareRunInformationModule *module)
virtual Tvoid | SetRunInformationModule (const Tstring &id)
virtual Tvoid | SetRunInformationModule (Tint slot)
virtual Tvoid | SetAnalysisManager (TAnalysisManager *manager)
virtual Tvoid | GoEventLoop ()
virtual Tvoid | WaitReturnFromEventLoop ()
## Static Public メソッド
TRunManager * | GetRunManager ()
| ランマネージャーへのポインタを得る
## Protected メソッド
virtual TstringList | divide (const Tstring &input) const
virtual Tvoid | installDefaultCommand ()
## Static Protected メソッド
Tvoid * | doEventLoop (Tvoid *arguments)
Tvoid * | showLogo (Tvoid *arguments)
Tvoid | catchAlarmSignal (Tint sigid)
## Protected 変数
Tstatus_t | theStatus
| ランマネージャーの状態
TRun | theRun
| 実行中のラン
TSystemAction * | theSystemAction
TRunAction * | theRunAction
TEventManager * | theEventManager
| イベントマネージャーへのポインタ
TUserInterface * | theUserInterface
Tthread_t | theThreadOfEventLoop
TSoftwareRunInformationModule * | theRunInformationModule
TAnalysisManager * | theAnalysisManager
TSystemTimer | theRunTimer
TSystemClock | theRunClock
TReadoutBookDefinition * | theReadoutBookDefinition
TReadoutBook * | theReadoutBook
TCrateDefinition * | theCrateDefinition
TCrate * | theCrate
TEnvironmentVariableTable | theEnvironmentVariableTable
Tint | theEventLimit
## Static Protected 変数
TRunManager * | theRunManager
| ランマネージャー自身へのポインタ

## 解説

これはランを管理するためのクラスです.

作者:
  Go IWAI <goiwai@users.sourceforge.jp>

TRunManagerクラスは全てのDAQアプリケーションで必要となります. DAQアプリケーションからインスタンシエートされた全てのオブジェクトは ここから参照できるようになっています. またいわゆるシングルトンクラスです. たいていの場合,このクラスを継承する必要はないと思いますが,もしも 複雑な(あるいは特殊な)動作をさせたい場合はこのクラスを継承し, 各種メンバ関数をオーバーライドしてください.

TODO:
  子プロセスを起動できるようにする.

  スレッドを起動できるようにする.

バグ:
  ラン実行時間の表示がマイナスになってしまう.

例:

  bt00.cc, rs00.cc, rs01.cc, st00.cc, st01.cc, st02.cc, sw00.cc, と terminal.cc.

## コンストラクタとデストラクタの解説

TRunManager::TRunManager | ( | TUserInterface * | ui = 0 | ) |

| TUserInterfaceクラスを継承したオブジェクトを渡して下さい. コンストラクタにはTUserInterfaceクラスを継承したオブジェクトを newして渡して下さい. これを省略した場合,TTerminalUserInterfaceが使用されます.

virtual TRunManager::~TRunManager | ( |  | ) | `[virtual]`

| 必ず最後に呼ばれなくてはなりません.

## メソッドの解説

Tvoid TRunManager::catchAlarmSignal | ( | Tint | sigid | ) | `[static, protected]`

virtual TstringList TRunManager::divide | ( | const Tstring & | input | ) | const`[protected, virtual]`

Tvoid* TRunManager::doEventLoop | ( | Tvoid * | arguments | ) | `[static, protected]`

TAnalysisManager * TRunManager::GetAnalysisManager | ( |  | ) | `[inline]`

| theAnalysisManagerへのポインタを得る

TCrate * TRunManager::GetCrate | ( |  | ) | `[inline]`

TCrateDefinition * TRunManager::GetCrateDefinition | ( |  | ) | `[inline]`

TEnvironmentVariableTable & TRunManager::GetEnvironmentVariableTable | ( |  | ) | `[inline]`

const TEnvironmentVariableTable & TRunManager::GetEnvironmentVariableTable | ( |  | ) | `[inline]`

Tint TRunManager::GetEventLimit | ( |  | ) | `[inline]`

TEventManager * TRunManager::GetEventManager | ( |  | ) | `[inline]`

| theEventManagerへのポインタを得る

TReadoutBook * TRunManager::GetReadoutBook | ( |  | ) | `[inline]`

| theReadoutBookを得る

TReadoutBookDefinition * TRunManager::GetReadoutBookDefinition | ( |  | ) | `[inline]`

| theReadoutBookDefinitionを得る

TRun & TRunManager::GetRun | ( |  | ) | `[inline]`

| theRunへの参照を得る

const TRun & TRunManager::GetRun | ( |  | ) | `[inline]`

| theRunへの参照を得る

TRunAction * TRunManager::GetRunAction | ( |  | ) | `[inline]`

| theRunActionへのポインタを得る

TSystemClock & TRunManager::GetRunClock | ( |  | ) | `[inline]`

| theRunClockへの参照を得る

const TSystemClock & TRunManager::GetRunClock | ( |  | ) | `[inline]`

| theRunClockへの参照を得る

Tint TRunManager::GetRunID | ( |  | ) | `[inline]`

| theRunIDを得る

TSoftwareRunInformationModule * TRunManager::GetRunInformationModule | ( |  | ) | `[inline]`

| theRunInformationModuleへのポインタを得る

TRunManager * TRunManager::GetRunManager | ( |  | ) | `[inline, static]`

| ランマネージャーへのポインタを得る

TSystemTimer & TRunManager::GetRunTimer | ( |  | ) | `[inline]`

| theRunTimerへの参照を得る

const TSystemTimer & TRunManager::GetRunTimer | ( |  | ) | `[inline]`

| theRunTimerへの参照を得る

Tstatus_t TRunManager::GetStatus | ( |  | ) | `[inline]`

| theStatus を得る

TSystemAction * TRunManager::GetSystemAction | ( |  | ) | `[inline]`

| theSystemActionへのポインタを得る

Tthread_t TRunManager::GetThreadOfEventLoop | ( |  | ) | `[inline]`

| イベントループを実行しているスレッドのID(theThreadOfEventLoop)を得る

TUserInterface * TRunManager::GetUserInterface | ( |  | ) | `[inline]`

| theUserInterfaceへのポインタを得る

virtual Tvoid TRunManager::GoEventLoop | ( |  | ) | `[virtual]`

virtual Tvoid TRunManager::installDefaultCommand | ( |  | ) | `[protected, virtual]`

virtual Tvoid TRunManager::PopdownLogo | ( |  | ) | `[virtual]`

virtual Tvoid TRunManager::PopupLogo | ( |  | ) | `[virtual]`

virtual Tvoid TRunManager::PrintAuthorInformation | ( | Tostream & | tos = Tcout | ) | const`[virtual]`

virtual Tvoid TRunManager::ResumeRun | ( |  | ) | `[virtual]`

virtual Tvoid TRunManager::SessionStart | ( |  | ) | `[virtual]`

virtual Tvoid TRunManager::SetAnalysisManager | ( | TAnalysisManager * | manager | ) | `[virtual]`

Tvoid TRunManager::SetCrateDefinition | ( | TCrateDefinition * | definition | ) |

Tvoid TRunManager::SetEnvironmentVariableTable | ( | const TEnvironmentVariableTable & | table | ) | `[inline]`

Tvoid TRunManager::SetEventAction | ( | TEventAction * | action | ) |

| theEventActionを設定する

Tvoid TRunManager::SetEventLimit | ( | Tint | nevents | ) | `[inline]`

Tvoid TRunManager::SetEventManager | ( | TEventManager * | manager | ) |

| theEventManagerを設定する

Tvoid TRunManager::SetReadoutBookDefinition | ( | TReadoutBookDefinition * | definition | ) |

Tvoid TRunManager::SetRun | ( | const TRun & | run | ) | `[inline]`

| theRunを変更する

Tvoid TRunManager::SetRunAction | ( | TRunAction * | action | ) |

| theRunActionを設定する

Tvoid TRunManager::SetRunClock | ( | const TSystemClock & | clock | ) | `[inline]`

| theRunClockを変更する

Tvoid TRunManager::SetRunID | ( | Tint | id | ) | `[inline]`

| theRunIDを変更する

virtual Tvoid TRunManager::SetRunInformationModule | ( | Tint | slot | ) | `[virtual]`

virtual Tvoid TRunManager::SetRunInformationModule | ( | const Tstring & | id | ) | `[virtual]`

virtual Tvoid TRunManager::SetRunInformationModule | ( | TSoftwareRunInformationModule * | module | ) | `[virtual]`

Tvoid TRunManager::SetRunTimer | ( | const TSystemTimer & | timer | ) | `[inline]`

| theRunTimerを変更する

Tvoid TRunManager::SetStatus | ( | Tstatus_t | status | ) | `[inline]`

| theStatus を変更する

Tvoid TRunManager::SetSystemAction | ( | TSystemAction * | action | ) |

| theSystemActionを設定する

Tvoid TRunManager::SetThreadOfEventLoop | ( | Tthread_t | thread | ) | `[inline]`

| イベントループを実行しているスレッドのID(theThreadOfEventLoop)を変更する

Tint TRunManager::SetUserCommand | ( | TCommand * | command | ) |

| コマンドの登録を行なう

Tvoid TRunManager::SetUserInterface | ( | TUserInterface * | ui | ) |

| theUserInterfaceを設定する

Tvoid* TRunManager::showLogo | ( | Tvoid * | arguments | ) | `[static, protected]`

virtual Tvoid TRunManager::ShowStatus | ( |  | ) | `[virtual]`

virtual Tvoid TRunManager::ShutdownRun | ( |  | ) | `[virtual]`

virtual Tvoid TRunManager::StartRun | ( | Tint | runid | ) | `[virtual]`

virtual Tvoid TRunManager::StartRun | ( |  | ) | `[virtual]`

virtual Tvoid TRunManager::StopRun | ( |  | ) | `[virtual]`

virtual Tvoid TRunManager::SuspendRun | ( |  | ) | `[virtual]`

virtual Tvoid TRunManager::WaitReturnFromEventLoop | ( |  | ) | `[virtual]`

## 変数の解説

TAnalysisManager* TRunManager::theAnalysisManager`[protected]`

TCrate* TRunManager::theCrate`[protected]`

TCrateDefinition* TRunManager::theCrateDefinition`[protected]`

TEnvironmentVariableTable TRunManager::theEnvironmentVariableTable`[protected]`

Tint TRunManager::theEventLimit`[protected]`

TEventManager* TRunManager::theEventManager`[protected]`

| イベントマネージャーへのポインタ

TReadoutBook* TRunManager::theReadoutBook`[protected]`

TReadoutBookDefinition* TRunManager::theReadoutBookDefinition`[protected]`

TRun TRunManager::theRun`[protected]`

| 実行中のラン

TRunAction* TRunManager::theRunAction`[protected]`

TSystemClock TRunManager::theRunClock`[protected]`

TSoftwareRunInformationModule* TRunManager::theRunInformationModule`[protected]`

TRunManager* TRunManager::theRunManager`[static, protected]`

| ランマネージャー自身へのポインタ

TSystemTimer TRunManager::theRunTimer`[protected]`

Tstatus_t TRunManager::theStatus`[protected]`

| ランマネージャーの状態

TSystemAction* TRunManager::theSystemAction`[protected]`

Tthread_t TRunManager::theThreadOfEventLoop`[protected]`

TUserInterface* TRunManager::theUserInterface`[protected]`

このクラスの解説は次のファイルから生成されました:

- TRunManager.hh