///
// Author: Philippe Pillot
-#include "TObject.h"
+#include "AliDetectorRecoParam.h"
#include "TString.h"
-class AliMUONRecoParam : public TObject
+class AliMUONRecoParam : public AliDetectorRecoParam
{
public:
AliMUONRecoParam();
static AliMUONRecoParam *GetLowFluxParam();
static AliMUONRecoParam *GetHighFluxParam();
+ /// set the calibration mode
+ void SetCalibrationMode(Option_t* mode) { fCalibrationMode = mode; fCalibrationMode.ToUpper();}
+ /// get the calibration mode
+ Option_t* GetCalibrationMode() const { return fCalibrationMode.Data(); }
+
/// set the clustering (pre-clustering) mode
- void SetClusteringMode(Option_t* mode) {fClusteringMode = mode;}
+ void SetClusteringMode(Option_t* mode) {fClusteringMode = mode; fClusteringMode.ToUpper();}
/// get the clustering (pre-clustering) mode
Option_t* GetClusteringMode() const {return fClusteringMode.Data();}
/// set the tracking mode
- void SetTrackingMode(Option_t* mode) {fTrackingMode = mode;}
+ void SetTrackingMode(Option_t* mode) {fTrackingMode = mode; fTrackingMode.ToUpper();}
/// get the tracking mode
Option_t* GetTrackingMode() const {return fTrackingMode.Data();}
+ /// switch on/off the combined cluster/track reconstruction
+ void CombineClusterTrackReco(Bool_t flag) {fCombinedClusterTrackReco = flag;}
+ /// return kTRUE/kFALSE if the combined cluster/track reconstruction is on/off
+ Bool_t CombineClusterTrackReco() const {return fCombinedClusterTrackReco;}
+
+ /// save all cluster info (including pads) in ESD, for the given percentage of events
+ void SaveFullClusterInESD(Bool_t flag, Double_t percentOfEvent = 100.) {fSaveFullClusterInESD = flag;
+ fPercentOfFullClusterInESD = (fSaveFullClusterInESD) ? percentOfEvent : 0.;}
+ /// return kTRUE/kFALSE depending on whether we save all cluster info in ESD or not
+ Bool_t SaveFullClusterInESD() const {return fSaveFullClusterInESD;}
+ /// return the percentage of events for which all cluster info are stored in ESD
+ Double_t GetPercentOfFullClusterInESD() const {return fPercentOfFullClusterInESD;}
+
/// set the minimum value (GeV/c) of momentum in bending plane
void SetMinBendingMomentum(Double_t val) {fMinBendingMomentum = val;}
/// return the minimum value (GeV/c) of momentum in bending plane
/// switch on/off the tracking of all the possible candidates (track only the best one if switched off)
void TrackAllTracks(Bool_t flag) {fTrackAllTracks = flag;}
- /// return kTRUE/kFALSE if the tracking of all the possible candidates is switch on/off
+ /// return kTRUE/kFALSE if the tracking of all the possible candidates is switched on/off
Bool_t TrackAllTracks() const {return fTrackAllTracks;}
/// switch on/off the recovering of tracks being lost during reconstruction
void RecoverTracks(Bool_t flag) {fRecoverTracks = flag;}
- /// return kTRUE/kFALSE if the recovering of tracks being lost during reconstruction is switch on/off
+ /// return kTRUE/kFALSE if the recovering of tracks being lost during reconstruction is switched on/off
Bool_t RecoverTracks() const {return fRecoverTracks;}
/// switch on/off the fast building of track candidates (assuming linear propagation between stations 4 and 5)
void MakeTrackCandidatesFast(Bool_t flag) {fMakeTrackCandidatesFast = flag;}
- /// return kTRUE/kFALSE if the fast building of track candidates is switch on/off
+ /// return kTRUE/kFALSE if the fast building of track candidates is switched on/off
Bool_t MakeTrackCandidatesFast() const {return fMakeTrackCandidatesFast;}
/// switch on/off the completion of reconstructed track
void ComplementTracks(Bool_t flag) {fComplementTracks = flag;}
- /// return kTRUE/kFALSE if completion of the reconstructed track is switch on/off
+ /// return kTRUE/kFALSE if completion of the reconstructed track is switched on/off
Bool_t ComplementTracks() const {return fComplementTracks;}
/// switch on/off the use of the smoother
void UseSmoother(Bool_t flag) {fUseSmoother = flag;}
- /// return kTRUE/kFALSE if the use of the smoother is switch on/off
+ /// return kTRUE/kFALSE if the use of the smoother is switched on/off
Bool_t UseSmoother() const {return fUseSmoother;}
virtual void Print(Option_t *option = "") const;
Double32_t fMaxNormChi2MatchTrigger; ///< maximum normalized chi2 of tracking/trigger track matching
+ Double32_t fPercentOfFullClusterInESD; ///< percentage of events for which all cluster info are stored in ESD
+
+ Bool_t fCombinedClusterTrackReco; ///< switch on/off the combined cluster/track reconstruction
+
Bool_t fTrackAllTracks; ///< kTRUE to track all the possible candidates; kFALSE to track only the best ones
Bool_t fRecoverTracks; ///< kTRUE to try to recover the tracks getting lost during reconstruction
Bool_t fUseSmoother; ///< kTRUE to use the smoother to compute track parameters/covariances and local chi2 at each cluster (used for Kalman tracking only)
+ Bool_t fSaveFullClusterInESD; ///< kTRUE to save all cluster info (including pads) in ESD
+
+ /// calibration mode: GAIN, NOGAIN
+ TString fCalibrationMode; ///<\brief calibration mode
// functions
void SetLowFluxParam();
void SetHighFluxParam();
- ClassDef(AliMUONRecoParam,1) // MUON reco parameters
+ ClassDef(AliMUONRecoParam,2) // MUON reco parameters
};
#endif