classes for customized class that do some sort of analysis on the
various types of data produced by the FMD.
*/
-#include <TObject.h>
+#include <TNamed.h>
#ifndef ROOT_TString
# include <TString.h>
#endif
+#ifndef ROOT_TArrayF
+# include <TArrayF.h>
+#endif
class AliRunLoader;
class AliLoader;
class AliStack;
class AliRun;
class AliRawReader;
+class AliFMDRawReader;
class AliFMD;
class AliFMDHit;
class AliFMDDigit;
class AliFMDSDigit;
class AliFMDRecPoint;
-class AliESD;
+class AliESDEvent;
class AliESDFMD;
+class AliHeader;
class TString;
class TClonesArray;
class TTree;
various scripts in @c FMD/scripts.
@ingroup FMD_util
*/
-class AliFMDInput : public TObject
+class AliFMDInput : public TNamed
{
public:
/** The kinds of data that can be read in. */
@return @c false on error */
virtual Bool_t ProcessESD(UShort_t, Char_t, UShort_t, UShort_t,
Float_t, Float_t);
-
+ /** Service function to make a logarithmic axis.
+ @param n Number of bins
+ @param min Minimum of axis
+ @param max Maximum of axis.
+ @return An array with the bin boundaries. */
+ static TArrayF MakeLogScale(Int_t n, Double_t min, Double_t max);
+
+ /** Set the raw data input
+ @param file File name - if empty, assume simulated raw. */
+ void SetRawFile(const char* file) { if (file) fRawFile = file; }
+
protected:
/** Copy ctor
@param o Object to copy from */
AliFMDInput(const AliFMDInput& o)
- : TObject(o),
+ : TNamed(o),
fGAliceFile(""),
fLoader(0),
fRun(0),
fStack(0),
fFMDLoader(0),
fReader(0),
+ fFMDReader(0),
fFMD(0),
- fMainESD(0),
fESD(0),
+ fESDEvent(0),
fTreeE(0),
fTreeH(0),
fTreeD(0),
fArrayS(0),
fArrayR(0),
fArrayA(0),
+ fHeader(0),
fGeoManager(0),
fTreeMask(0),
- fIsInit(kFALSE)
+ fRawFile(""),
+ fIsInit(kFALSE),
+ fEventCount(0)
{}
/** Assignement operator
@return REference to this */
AliFMDInput& operator=(const AliFMDInput&) { return *this; }
- TString fGAliceFile; // File name of gAlice file
- AliRunLoader* fLoader; // Loader of FMD data
- AliRun* fRun; // Run information
- AliStack* fStack; // Stack of particles
- AliLoader* fFMDLoader; // Loader of FMD data
- AliRawReader* fReader; // Raw data reader
- AliFMD* fFMD; // FMD object
- AliESD* fMainESD; // ESD Object
- AliESDFMD* fESD; // FMD ESD data
- TTree* fTreeE; // Header tree
- TTree* fTreeH; // Hits tree
- TTree* fTreeD; // Digit tree
- TTree* fTreeS; // SDigit tree
- TTree* fTreeR; // RecPoint tree
- TTree* fTreeA; // Raw data tree
- TChain* fChainE; // Chain of ESD's
- TClonesArray* fArrayE; // Event info array
- TClonesArray* fArrayH; // Hit info array
- TClonesArray* fArrayD; // Digit info array
- TClonesArray* fArrayS; // SDigit info array
- TClonesArray* fArrayR; // Rec points info array
- TClonesArray* fArrayA; // Raw data (digits) info array
- TGeoManager* fGeoManager; // Geometry manager
- Int_t fTreeMask; // Which tree's to load
- Bool_t fIsInit; // Have we been initialized
+ TString fGAliceFile; // File name of gAlice file
+ AliRunLoader* fLoader; // Loader of FMD data
+ AliRun* fRun; // Run information
+ AliStack* fStack; // Stack of particles
+ AliLoader* fFMDLoader; // Loader of FMD data
+ AliRawReader* fReader; // Raw data reader
+ AliFMDRawReader* fFMDReader; // FMD raw reader
+ AliFMD* fFMD; // FMD object
+ AliESDFMD* fESD; // FMD ESD data
+ AliESDEvent* fESDEvent; // ESD Event object.
+ TTree* fTreeE; // Header tree
+ TTree* fTreeH; // Hits tree
+ TTree* fTreeD; // Digit tree
+ TTree* fTreeS; // SDigit tree
+ TTree* fTreeR; // RecPoint tree
+ TTree* fTreeA; // Raw data tree
+ TChain* fChainE; // Chain of ESD's
+ TClonesArray* fArrayE; // Event info array
+ TClonesArray* fArrayH; // Hit info array
+ TClonesArray* fArrayD; // Digit info array
+ TClonesArray* fArrayS; // SDigit info array
+ TClonesArray* fArrayR; // Rec points info array
+ TClonesArray* fArrayA; // Raw data (digits) info array
+ AliHeader* fHeader; // Header
+ TGeoManager* fGeoManager; // Geometry manager
+ Int_t fTreeMask; // Which tree's to load
+ TString fRawFile; // Raw input file
+ Bool_t fIsInit; // Have we been initialized
+ Int_t fEventCount; // Event counter
ClassDef(AliFMDInput,0) //Hits for detector FMD
};