Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

/Go4DynamicList/TGo4HistogramEntry.h

Go to the documentation of this file.
00001 //---------------------------------------------------------------
00002 //        Go4 Release Package v2.10-5 (build 21005) 
00003 //                      03-Nov-2005
00004 //---------------------------------------------------------------
00005 //       The GSI Online Offline Object Oriented (Go4) Project
00006 //       Experiment Data Processing at DVEE department, GSI
00007 //---------------------------------------------------------------
00008 //
00009 //Copyright (C) 2000- Gesellschaft f. Schwerionenforschung, GSI
00010 //                    Planckstr. 1, 64291 Darmstadt, Germany
00011 //Contact:            http://go4.gsi.de
00012 //----------------------------------------------------------------
00013 //This software can be used under the license agreements as stated
00014 //in Go4License.txt file which is part of the distribution.
00015 //----------------------------------------------------------------
00016 #ifndef TGO4HISTOGRAMENTRY_H
00017 #define TGO4HISTOGRAMENTRY_H
00018 
00019 
00020 #include "Go4DynamicList/TGo4DynamicEntry.h"
00021 #include "TString.h"
00022 
00023 /* maximum dimension  of histogram processable in dynamic list */
00024 #define __MAXHISDIM__ 3
00025 
00026 class TH1;
00027 class TGo4EventElement;
00028 class TGo4DynamicEntryStatus;
00029 class TGo4HistogramEntryStatus;
00030 class TGo4Condition;
00031 class TGo4EventDataIndex;
00032 
00038 class TGo4HistogramEntry : public TGo4DynamicEntry {
00039 
00040   public:
00041 
00043     static const UInt_t fguMAXHISDIMENSION;
00044 
00045     TGo4HistogramEntry(const Text_t * name);
00046 
00047     TGo4HistogramEntry();
00048 
00049     virtual ~TGo4HistogramEntry();
00050 
00055     TGo4DynamicEntryStatus * CreateStatus();
00056 
00058     Int_t Process();
00059 
00061     void SetHistogramName(const Text_t * name);
00062 
00066     void SetHisVarName(UInt_t ix, const Text_t * name);
00067 
00071     void SetHisEventName(UInt_t ix, const Text_t * name);
00072 
00077     virtual void CleanupHistogram(TH1 * his);
00078 
00080     virtual void Reset();
00081 
00085     virtual void InitPointers();
00086 
00088     virtual void SetStatus(TGo4DynamicEntryStatus * state);
00089 
00095     virtual void CleanupEvent(TGo4EventElement * ev);
00096 
00097   private:
00102     void UpdateStatus(TGo4DynamicEntryStatus * state);
00103 
00105     TH1* fxHistogram; 
00106 
00108     TString fxHistogramName;
00109 
00111     TString fxHisVarName[__MAXHISDIM__];
00112 
00115     TString fxHisEventName[__MAXHISDIM__];
00116 
00119     TGo4EventElement* fxHisEvent[__MAXHISDIM__]; 
00120 
00123     Float_t* fxHisDataFloat[__MAXHISDIM__];
00124  
00127     Double_t* fxHisDataDouble[__MAXHISDIM__];
00128     
00131     Int_t* fxHisDataInt[__MAXHISDIM__];
00132    
00135     Short_t* fxHisDataShort[__MAXHISDIM__];
00136     
00139     Char_t* fxHisDataChar[__MAXHISDIM__];
00140    
00143     Long_t* fxHisDataLong[__MAXHISDIM__];
00144     
00147     Bool_t* fxHisDataBool[__MAXHISDIM__];
00148     
00151     UInt_t* fxHisDataUInt[__MAXHISDIM__];
00152   
00155     UShort_t* fxHisDataUShort[__MAXHISDIM__];
00156     
00159     UChar_t* fxHisDataUChar[__MAXHISDIM__];
00160   
00163     ULong_t* fxHisDataULong[__MAXHISDIM__];
00164   
00165   ClassDef(TGo4HistogramEntry,3)
00166 };
00167 
00168 #endif //TGO4HISTOGRAMENTRY_H
00169 
00170 //----------------------------END OF GO4 SOURCE FILE ---------------------

Generated on Tue Nov 8 10:55:52 2005 for Go4-v2.10-5 by doxygen1.2.15