TAnalysisManager.hh Source File

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

# TAnalysisManager.hh

解説を見る。

    00001 // =====================================================================
    00021 // =====================================================================
    00022 #ifndef __TANALYSISMANAGER_HH
    00023 #define __TANALYSISMANAGER_HH
    00024
    00025 #include "Tglobals.h"
    00026 #include "TAnalyser.hh"
    00027 #include "TAnalysisStatusTable.hh"
    00028 #include "TAnalysisAction.hh"
    00029
    00030 class TExtractor;
    00031
    00032
    00052 class TAnalysisManager
    00053 {
    00054
    00055   protected:
    00056     static TAnalysisManager* theAnalysisManager;
    00057
    00058   protected:
    00059     TAnalysisStatusTable theStatusTable;
    00060     TAnalyser* theAnalyser;
    00061     TAnalysisAction* theAnalysisAction;
    00062
    00063   public:
    00064     TAnalysisManager( TAnalyser* analyser = 0 );
    00065     virtual ~TAnalysisManager();
    00066
    00067   public:
    00068     virtual Tvoid StartAnalysis( const Tstring& id );
    00069     virtual Tvoid StopAnalysis( const Tstring& id );
    00070     virtual Tvoid UpdateAnalysis( const Tstring& id );
    00071     virtual Tvoid SuspendAnalysis( const Tstring& id );
    00072     virtual Tvoid ResumeAnalysis( const Tstring& id );
    00073     virtual Tvoid StartAnalysis();
    00074     virtual Tvoid StopAnalysis();
    00075     virtual Tvoid UpdateAnalysis();
    00076     virtual Tvoid SuspendAnalysis();
    00077     virtual Tvoid ResumeAnalysis();
    00078
    00079   public:
    00080     virtual Tvoid ShowStatus() const;
    00081
    00082   public:
    00083     TAnalyser* GetAnalyser() const;
    00084     Tvoid SetAnalyser( TAnalyser* analyser );
    00085     Tvoid SetExtractor( TExtractor* extractor );
    00086     const TAnalysisStatusTable& GetStatusTable() const;
    00087     TAnalysisStatusTable& GetStatusTable();
    00088     Tvoid SetStatusTable( const TAnalysisStatusTable& table );
    00089     TAnalysisAction* GetAnalysisAction() const;
    00090     Tvoid SetAnalysisAction( TAnalysisAction* action );
    00091
    00092   public:
    00093     virtual Tvoid GoAnalysisLoop( const Tstring& id );
    00094     virtual Tvoid WaitReturnFromAnalysisLoop( const Tstring& id );
    00095
    00096   protected:
    00097     static Tvoid* doAnalysisLoop( Tvoid* arguments );
    00098
    00099   public:
    00100     static TAnalysisManager* GetAnalysisManager();
    00101
    00102 };
    00103
    00104 inline TAnalysisManager* TAnalysisManager::GetAnalysisManager()
    00105 {
    00106   if ( theAnalysisManager == 0 )
    00107     return 0;
    00108   return theAnalysisManager;
    00109 }
    00110
    00111 inline TAnalyser* TAnalysisManager::GetAnalyser() const
    00112 {
    00113   return theAnalyser;
    00114 }
    00115
    00116 inline const TAnalysisStatusTable& TAnalysisManager::GetStatusTable() const
    00117 {
    00118   return theStatusTable;
    00119 }
    00120
    00121 inline TAnalysisStatusTable& TAnalysisManager::GetStatusTable()
    00122 {
    00123   return theStatusTable;
    00124 }
    00125
    00126 inline Tvoid TAnalysisManager::SetStatusTable( const TAnalysisStatusTable& table )
    00127 {
    00128   theStatusTable = table;
    00129   return;
    00130 }
    00131
    00132 inline Tvoid TAnalysisManager::SetExtractor( TExtractor* extractor )
    00133 {
    00134   if ( theAnalyser != 0 )
    00135     theAnalyser -> AddExtractor( extractor );
    00136   return;
    00137 }
    00138
    00139 inline TAnalysisAction* TAnalysisManager::GetAnalysisAction() const
    00140 {
    00141   return theAnalysisAction;
    00142 }
    00143
    00144 #endif