+ /** 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* h, TParticle* p);
+ /** Process one track reference, and optionally it's corresponding kinematics
+ track. Users should overload this to process each track reference.
+ @param trackRef Track Reference
+ @param track Associated track
+ @return @c false on error */
+ virtual Bool_t ProcessTrackRef(AliTrackReference* trackRef, TParticle* track);
+ /** 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 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* 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* digit);
+ /** 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 ProcessRawCalibDigit(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* 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(UShort_t d, Char_t r, UShort_t s, UShort_t t,
+ Float_t eta, Float_t mult);
+ /** Process User 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 v Value
+ @return @c false on error */
+ virtual Bool_t ProcessUser(UShort_t d, Char_t r, UShort_t s, UShort_t t,
+ Float_t v);
+ /** 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);