kRecPoints, // Reconstructed points
kESD, // Load ESD's
kRaw, // Read raw data
- kGeometry // Not really a tree
+ kGeometry, // Not really a tree
+ kTracks // Hits and tracs - for BG study
};
/** CTOR */
AliFMDInput();
optionally the corresponding kinematics track.
@return @c false on error */
virtual Bool_t ProcessHits();
+ /** Loop over all tracks, and call ProcessTrack with each hit for
+ that track
+ @return @c false on error */
+ virtual Bool_t ProcessTracks();
/** Loop over all digits, and call ProcessDigit for each digit.
@return @c false on error */
virtual Bool_t ProcessDigits();
each reconstructed point.
@return @c false on error */
virtual Bool_t ProcessRecPoints();
+ /** Loop over all ESD data, and call ProcessESD for each entry.
+ @return @c false on error */
+ virtual Bool_t ProcessESDs();
/** Process one hit, and optionally it's corresponding kinematics
track. Users should over this to process each hit.
+ @param h Hit
+ @param p Associated track
@return @c false on error */
- virtual Bool_t ProcessHit(AliFMDHit*, TParticle*) { return kTRUE; }
- /** Process one digit. Users should over this to process each digit.
+ virtual Bool_t ProcessHit(AliFMDHit* h, TParticle* p);
+ /** Process one hit per track. Users should over this to process
+ each hit.
+ @param i Track number
+ @param p Track
+ @param h Associated Hit
@return @c false on error */
- virtual Bool_t ProcessDigit(AliFMDDigit*) { return kTRUE; }
+ virtual Bool_t ProcessTrack(Int_t i, TParticle* p, AliFMDHit* h);
+ /** Process one digit. Users should over this to process each
+ digit.
+ @param digit Digit
+ @return @c false on error */
+ virtual Bool_t ProcessDigit(AliFMDDigit* digit);
/** Process one summable digit. Users should over this to process
each summable digit.
+ @param sdigit Summable digit
@return @c false on error */
- virtual Bool_t ProcessSDigit(AliFMDSDigit*) { return kTRUE; }
+ virtual Bool_t ProcessSDigit(AliFMDSDigit* sdigit);
/** Process one digit from raw data files. Users should over this
to process each raw digit.
+ @param digit Raw digit
@return @c false on error */
- virtual Bool_t ProcessRawDigit(AliFMDDigit*) { return kTRUE; }
+ virtual Bool_t ProcessRawDigit(AliFMDDigit* digit);
/** Process one reconstructed point. Users should over this to
process each reconstructed point.
+ @param point Reconstructed point
@return @c false on error */
- virtual Bool_t ProcessRecPoint(AliFMDRecPoint*) { return kTRUE; }
+ virtual Bool_t ProcessRecPoint(AliFMDRecPoint* point);
/** Process ESD data for the FMD. Users should overload this to
deal with ESD data.
+ @param d Detector number (1-3)
+ @param r Ring identifier ('I' or 'O')
+ @param s Sector number (0-19, or 0-39)
+ @param t Strip number (0-511, or 0-255)
+ @param eta Psuedo-rapidity
+ @param mult Psuedo-multiplicity
@return @c false on error */
- virtual Bool_t ProcessESD(AliESDFMD*) { return kTRUE; }
+ virtual Bool_t ProcessESD(UShort_t, Char_t, UShort_t, UShort_t,
+ Float_t, Float_t);
protected:
/** Copy ctor
@param o Object to copy from */
- AliFMDInput(const AliFMDInput& o) : TObject(o) {}
+ AliFMDInput(const AliFMDInput& o)
+ : TObject(o),
+ fGAliceFile(""),
+ fLoader(0),
+ fRun(0),
+ fStack(0),
+ fFMDLoader(0),
+ fReader(0),
+ fFMD(0),
+ fMainESD(0),
+ fESD(0),
+ fTreeE(0),
+ fTreeH(0),
+ fTreeD(0),
+ fTreeS(0),
+ fTreeR(0),
+ fTreeA(0),
+ fChainE(0),
+ fArrayE(0),
+ fArrayH(0),
+ fArrayD(0),
+ fArrayS(0),
+ fArrayR(0),
+ fArrayA(0),
+ fGeoManager(0),
+ fTreeMask(0),
+ fIsInit(kFALSE)
+ {}
/** Assignement operator
@return REference to this */
AliFMDInput& operator=(const AliFMDInput&) { return *this; }
ClassDef(AliFMDInput,0) //Hits for detector FMD
};
+inline Bool_t AliFMDInput::ProcessHit(AliFMDHit*,TParticle*) { return kTRUE; }
+inline Bool_t AliFMDInput::ProcessTrack(Int_t,TParticle*,
+ AliFMDHit*) { return kTRUE; }
+inline Bool_t AliFMDInput::ProcessDigit(AliFMDDigit*) { return kTRUE; }
+inline Bool_t AliFMDInput::ProcessSDigit(AliFMDSDigit*) { return kTRUE; }
+inline Bool_t AliFMDInput::ProcessRawDigit(AliFMDDigit*) { return kTRUE; }
+inline Bool_t AliFMDInput::ProcessRecPoint(AliFMDRecPoint*) { return kTRUE; }
+inline Bool_t AliFMDInput::ProcessESD(UShort_t,Char_t,UShort_t,UShort_t,
+ Float_t,Float_t) { return kTRUE; }
+
#endif
//____________________________________________________________________