class TFile;
class TTree;
class TList;
-class AliQADataMaker;
+class AliQADataMakerRec;
class AliReconstruction: public TNamed {
public:
AliReconstruction(const char* gAliceFilename = "galice.root",
- const char* cdbUri = "local://$ALICE_ROOT",
const char* name = "AliReconstruction",
const char* title = "reconstruction");
AliReconstruction(const AliReconstruction& rec);
void SetWriteAOD(Bool_t flag=kTRUE){fWriteAOD=flag;}
void SetFillTriggerESD(Bool_t flag=kTRUE){fFillTriggerESD=flag;}
void SetDiamondProfile(AliESDVertex *dp) {fDiamondProfile=dp;}
+ void SetMeanVertexConstraint(Bool_t flag=kTRUE){fMeanVertexConstraint=flag;}
void SetCleanESD(Bool_t flag=kTRUE){fCleanESD=flag;}
+ void SetV0DCAmax(Float_t d) {fV0DCAmax=d;}
+ void SetV0CsPmin(Float_t d) {fV0CsPmin=d;}
void SetDmax(Float_t d) {fDmax=d;}
void SetZmax(Float_t z) {fZmax=z;}
+ Float_t GetV0DCAmax() const {return fV0DCAmax;}
+ Float_t GetV0CsPmin() const {return fV0CsPmin;}
Float_t GetDmax() const {return fDmax;}
Float_t GetZmax() const {return fZmax;}
void SetCheckPointLevel(Int_t checkPointLevel)
{fCheckPointLevel = checkPointLevel;}
+
// CDB storage activation
- void InitCDBStorage();
void SetDefaultStorage(const char* uri);
- void SetRemoteStorage(const char* uri);
void SetSpecificStorage(const char* calibType, const char* uri);
- Bool_t SetRunNumber();
-
Bool_t MisalignGeometry(const TString& detectors);
void SetAlignObjArray(TObjArray *array)
void ESDFile2AODFile(TFile* esdFile, TFile* aodFile);
// Quality Assurance
-// virtual Bool_t RunQA(const char* detectors, AliESDEvent *& esd);
-// void SetQACycles(const char * detector, const Int_t cycles) { fQACycles[GetDetIndex(detector)] = cycles ; }
+ virtual Bool_t RunQA(const char* detectors, AliESDEvent *& esd);
+ void SetQACycles(const char * detector, const Int_t cycles) { fQACycles[GetDetIndex(detector)] = cycles ; }
+ void SetRunQA(Bool_t flag=kTRUE) {fRunQA = flag ;}
+ void SetRunGlobalQA(Bool_t flag=kTRUE){fRunGlobalQA = flag;}
+ void SetInLoopQA(Bool_t flag=kTRUE) {fInLoopQA = flag;}
private:
+ void InitCDB();
+ void SetCDBLock();
+ Bool_t SetRunNumberFromData();
Bool_t RunLocalReconstruction(const TString& detectors);
Bool_t RunLocalEventReconstruction(const TString& detectors);
Bool_t RunVertexFinder(AliESDEvent*& esd);
//Quality Assurance
Int_t GetDetIndex(const char * detector);
-// AliQADataMaker* GetQADataMaker(Int_t iDet);
-// const Int_t GetQACycles(const char * detector) { return fQACycles[GetDetIndex(detector)] ; }
+ AliQADataMakerRec* GetQADataMaker(Int_t iDet);
+ const Int_t GetQACycles(const char * detector) { return fQACycles[GetDetIndex(detector)] ; }
void CheckQA() ;
//*** Global reconstruction flags *******************
//*** Clean ESD flag and parameters *******************
Bool_t fCleanESD; // clean ESD flag
+ Float_t fV0DCAmax; // max. allowed DCA between V0 daugthers
+ Float_t fV0CsPmin; // min. allowed cosine of V0 pointing angle
Float_t fDmax; // max. allowed transverse impact parameter
Float_t fZmax; // max. allowed longitudinal impact parameter
AliVertexer* fVertexer; //! vertexer for ITS
AliTracker* fTracker[fgkNDetectors]; //! trackers
AliESDVertex* fDiamondProfile; // (x,y) diamond profile for AliVertexerTracks
+ Bool_t fMeanVertexConstraint; // use fDiamondProfile in AliVertexerTracks
TList* fGRPList; // TList from the GRP/GRP/Data CDB folder
TObjArray* fAlignObjArray; // array with the alignment objects to be applied to the geometry
TString fCDBUri; // Uri of the default CDB storage
- TString fRemoteCDBUri; // Uri of the remote CDB storage
TObjArray fSpecCDBUri; // Array with detector specific CDB storages
+ Bool_t fInitCDBCalled; //! flag to check if CDB storages are already initialized
+ Bool_t fSetRunNumberFromDataCalled; //! flag to check if run number is already loaded from run loader
//Quality Assurance
-// AliQADataMaker * fQADataMaker[fgkNDetectors]; //! array of QA data maker objects
-// Int_t fQACycles[fgkNDetectors] ; // cycle length (# events) over which QA data are accumulated
+ AliQADataMakerRec *fQADataMaker[fgkNDetectors+1]; //! array of QA data makers
+ Int_t fQACycles[ fgkNDetectors];// # events over which QA data are accumulated
+ Bool_t fRunQA ; // Run QA flag
+ Bool_t fRunGlobalQA; // Run global QA flag
+ Bool_t fInLoopQA; // In-loop QA flag
- ClassDef(AliReconstruction, 15) // class for running the reconstruction
+ ClassDef(AliReconstruction, 19) // class for running the reconstruction
};
#endif