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

TAnalyser.hh

解説を見る。
00001 // =====================================================================
00024 // =====================================================================
00025 #ifndef CLDAQ__TANALYSER_HH
00026 #define CLDAQ__TANALYSER_HH
00027 
00028 #include "Tglobals.h"
00029 
00030 class TExtractor;
00031 class TMatrixElement;
00032 
00033 
00053 class TAnalyser
00054 {
00055 
00056   protected:
00057     Tstring theAnalyserID;
00058     TExtractor** theExtractorList;
00059     Tint theExtractorListCapacity;
00060     Tint theNumberOfExtractors;
00061     Tint theExtractorIndex;
00062 
00063   public:
00064     TAnalyser( const Tstring& id );
00065     virtual ~TAnalyser();
00066 
00067   public:
00068     Tint AddExtractor( TExtractor* extractor );
00069     Tint RemoveExtractor( Tint index );
00070     Tvoid ClearExtractorList();
00071     Tbool ResizeExtractorList( Tint capacity );
00072     TExtractor* NextExtractor();
00073     TExtractor* FindExtractor( const Tstring& id );
00074     TExtractor* GetExtractor( Tint index );
00075     TExtractor* GetExtractor();
00076     Tint GetExtractorListCapacity() const;
00077     Tint GetNumberOfExtractors() const;
00078     Tint GetExtractorIndex() const;
00079     Tvoid SetExtractorIndex( Tint index );
00080     const Tstring& GetAnalyserID() const;
00081     Tvoid SetAnalyserID( const Tstring& id );
00082 
00083   public:
00084     virtual Tvoid NotFoundExtractor();
00085 
00086   public:
00087     virtual Tvoid OpenCanvas( const Tstring& id, const Tstring& title, Tint width = 640, Tint height = 480 ) = 0;
00088     virtual Tvoid ClearCanvas( const Tstring& id ) = 0;
00089     virtual Tvoid CloseCanvas( const Tstring& id ) = 0;
00090     virtual Tvoid Create1DHistogram( const Tstring& id, const Tstring& title, Tint nbin, Tdouble min, Tdouble max ) = 0;
00091     virtual Tvoid Create2DHistogram( const Tstring& id, const Tstring& title, Tint xbin, Tdouble xmin, Tdouble xmax, Tint ybin, Tdouble ymin, Tdouble ymax ) = 0;
00092     virtual Tvoid CreateAppendGraph( const Tstring& id, const Tstring& title ) = 0;
00093     virtual Tvoid CreateSubstituteGraph( const Tstring& id, const Tstring& title ) = 0;
00094     virtual Tvoid Fill( const TMatrixElement& matrix ) = 0;
00095     virtual Tvoid Clear( const Tstring& id ) = 0;
00096     virtual Tvoid Remove( const Tstring& id ) = 0;
00097     virtual Tvoid Update( const Tstring& id ) = 0;
00098 
00099   protected:
00100     Tvoid free();
00101     Tvoid allocate( Tint capacity );
00102 
00103 };
00104 
00105 inline Tint TAnalyser::GetExtractorListCapacity() const
00106 {
00107   return theExtractorListCapacity;
00108 }
00109 
00110 inline Tint TAnalyser::GetNumberOfExtractors() const
00111 {
00112   return theNumberOfExtractors;
00113 }
00114 
00115 inline Tint TAnalyser::GetExtractorIndex() const
00116 {
00117   return theExtractorIndex;
00118 }
00119 
00120 inline Tvoid TAnalyser::SetExtractorIndex( Tint index )
00121 {
00122   theExtractorIndex = index;
00123   return;
00124 }
00125 
00126 inline const Tstring& TAnalyser::GetAnalyserID() const
00127 {
00128   return theAnalyserID;
00129 }
00130 
00131 inline Tvoid TAnalyser::SetAnalyserID( const Tstring& id )
00132 {
00133   theAnalyserID = id;
00134   return;
00135 }
00136 
00137 #endif

CLDAQ - a Class Library for Data AcQuisition (Version 1.12.0)
Go IWAI <goiwai@users.sourceforge.jp>