]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
A few fixes, including new methods needed by AMORE
authorschutz <schutz@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 5 Nov 2009 22:53:40 +0000 (22:53 +0000)
committerschutz <schutz@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 5 Nov 2009 22:53:40 +0000 (22:53 +0000)
STEER/AliReconstruction.cxx
STEER/AliReconstruction.h

index 39ad4bf10820625eb3942c298c5f6d442b87471f..6e3809090cc4bae19d9bd9581a56e727e284f4e3 100644 (file)
 #include "AliV0vertexer.h"
 #include "AliVertexer.h"
 #include "AliVertexerTracks.h"
-#include "AliTriggerRunScalers.h"
-#include "AliCTPTimeParams.h" 
 
 ClassImp(AliReconstruction)
 
@@ -240,7 +238,6 @@ AliReconstruction::AliReconstruction(const char* gAliceFilename) :
   fRunInfo(NULL),
   fEventInfo(),
   fRunScalers(NULL),
-  fCTPTimeParams(NULL),  
 
   fRunLoader(NULL),
   fRawReader(NULL),
@@ -342,7 +339,6 @@ AliReconstruction::AliReconstruction(const AliReconstruction& rec) :
   fRunInfo(NULL),
   fEventInfo(),
   fRunScalers(NULL),
-  fCTPTimeParams(NULL),
 
   fRunLoader(NULL),
   fRawReader(NULL),
@@ -468,9 +464,7 @@ AliReconstruction& AliReconstruction::operator = (const AliReconstruction& rec)
   delete fRunScalers; fRunScalers = NULL;
   if (rec.fRunScalers) fRunScalers = new AliTriggerRunScalers(*rec.fRunScalers); 
 
-  delete fCTPTimeParams; fCTPTimeParams = NULL;
-  if (rec.fCTPTimeParams) fCTPTimeParams = new AliCTPTimeParams(*rec.fCTPTimeParams);
-
+  
   fRunLoader       = NULL;
   fRawReader       = NULL;
   fParentRawReader = NULL;
@@ -546,7 +540,6 @@ AliReconstruction::~AliReconstruction()
   }
   delete fGRPData;
   delete fRunScalers;
-  delete fCTPTimeParams;
   fOptions.Delete();
   if (fAlignObjArray) {
     fAlignObjArray->Delete();
@@ -561,7 +554,7 @@ AliReconstruction::~AliReconstruction()
 void AliReconstruction::InitQA()
 {
   //Initialize the QA and start of cycle 
-  AliCodeTimerAuto("",0);
+  AliCodeTimerAuto("");
   
   if (fInitQACalled) return;
   fInitQACalled = kTRUE;
@@ -598,7 +591,7 @@ void AliReconstruction::InitQA()
     qam->SetCycleLength(AliQAv1::DETECTORINDEX_t(det), fQACycles[det]) ;  
     qam->SetWriteExpert(AliQAv1::DETECTORINDEX_t(det)) ;
   }
-  if (!fRawReader && !fInput && fQATasks.Contains(AliQAv1::kRAWS))
+  if (!fRawReader && !fInput && IsInTasks(AliQAv1::kRAWS))
     fQATasks.ReplaceAll(Form("%d",AliQAv1::kRAWS), "") ;
   qam->SetTasks(fQATasks) ; 
   qam->InitQADataMaker(AliCDBManager::Instance()->GetRun()) ; 
@@ -607,13 +600,13 @@ void AliReconstruction::InitQA()
     Bool_t sameCycle = kFALSE ;
     AliQADataMaker *qadm = qam->GetQADataMaker(AliQAv1::kGLOBAL);
     AliInfo(Form("Initializing the global QA data maker"));
-    if (fQATasks.Contains(Form("%d", AliQAv1::kRECPOINTS))) {
+    if (IsInTasks(AliQAv1::kRECPOINTS)) {
       qadm->StartOfCycle(AliQAv1::kRECPOINTS, AliCDBManager::Instance()->GetRun(), sameCycle) ; 
       TObjArray **arr=qadm->Init(AliQAv1::kRECPOINTS);
       AliTracker::SetResidualsArray(arr);
       sameCycle = kTRUE ; 
     }
-    if (fQATasks.Contains(Form("%d", AliQAv1::kESDS))) {
+    if (IsInTasks(AliQAv1::kESDS)) {
       qadm->StartOfCycle(AliQAv1::kESDS, AliCDBManager::Instance()->GetRun(), sameCycle) ; 
       qadm->Init(AliQAv1::kESDS);
     }
@@ -625,7 +618,7 @@ void AliReconstruction::InitQA()
 void AliReconstruction::MergeQA(const char *fileName)
 {
   //Initialize the QA and start of cycle 
-  AliCodeTimerAuto("",0) ;
+  AliCodeTimerAuto("") ;
   AliQAManager::QAManager()->Merge(AliCDBManager::Instance()->GetRun(),fileName) ; 
   AliSysInfo::AddStamp("MergeQA") ; 
 }
@@ -636,7 +629,7 @@ void AliReconstruction::InitCDB()
 // activate a default CDB storage
 // First check if we have any CDB storage set, because it is used 
 // to retrieve the calibration and alignment constants
-  AliCodeTimerAuto("",0);
+  AliCodeTimerAuto("");
 
   if (fInitCDBCalled) return;
   fInitCDBCalled = kTRUE;
@@ -656,21 +649,15 @@ void AliReconstruction::InitCDB()
        AliDebug(2,"!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");
        AliDebug(2, Form("Default CDB storage is set to: %s", fCDBUri.Data()));
        AliDebug(2, "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");
-       man->SetDefaultStorage(fCDBUri);
-    } 
-    else if (!man->GetRaw()){
-       fCDBUri="local://$ALICE_ROOT/OCDB";
+    } else {
+       fCDBUri="local://$ALICE_ROOT/OCDB";
        AliWarning("!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");
        AliWarning("Default CDB storage not yet set !!!!");
        AliWarning(Form("Setting it now to: %s", fCDBUri.Data()));
        AliWarning("!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");
-       man->SetDefaultStorage(fCDBUri);
-    }
-    else {    
-       AliWarning("!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");
-       AliWarning("Default storage will be set after setting the Run Number!!!");
-       AliWarning("!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");                    
+               
     }
+    man->SetDefaultStorage(fCDBUri);
   }
 
   // Now activate the detector specific CDB storage locations
@@ -1138,7 +1125,7 @@ Bool_t AliReconstruction::InitGRP() {
 //_____________________________________________________________________________
 Bool_t AliReconstruction::LoadCDB()
 {
-  AliCodeTimerAuto("",0);
+  AliCodeTimerAuto("");
 
   AliCDBManager::Instance()->Get("GRP/CTP/Config");
 
@@ -1152,7 +1139,7 @@ Bool_t AliReconstruction::LoadCDB()
 //_____________________________________________________________________________
 Bool_t AliReconstruction::LoadTriggerScalersCDB()
 {
-  AliCodeTimerAuto("",0);
+  AliCodeTimerAuto("");
 
   AliCDBEntry* entry = AliCDBManager::Instance()->Get("GRP/CTP/Scalers");
 
@@ -1167,25 +1154,10 @@ Bool_t AliReconstruction::LoadTriggerScalersCDB()
   return kTRUE;
 }
 //_____________________________________________________________________________
-Bool_t AliReconstruction::LoadCTPTimeParamsCDB()
-{
-  AliCDBEntry* entry = AliCDBManager::Instance()->Get("GRP/CTP/CTPtiming");
-
-  if (entry) {
-
-       AliInfo("Found an AliCTPTimeParams in GRP/CTP/CTPtiming, reading it");
-       fCTPTimeParams = dynamic_cast<AliCTPTimeParams*> (entry->GetObject());
-       entry->SetOwner(0);
-       return kTRUE;
-  }
-  
-  return kFALSE; 
-}
-//_____________________________________________________________________________
 Bool_t AliReconstruction::Run(const char* input)
 {
   // Run Run Run
-  AliCodeTimerAuto("",0);
+  AliCodeTimerAuto("");
 
   InitRun(input);
   if (GetAbort() != TSelector::kContinue) return kFALSE;
@@ -1195,8 +1167,6 @@ Bool_t AliReconstruction::Run(const char* input)
     Long64_t nEntries = (fLastEvent < 0) ? (TChain::kBigNumber) : (fLastEvent - fFirstEvent + 1);
     // Proof mode
     if (gProof) {
-      // Temporary fix for long raw-data runs (until socket timeout handling in PROOF is revised)
-      gProof->Exec("gEnv->SetValue(\"Proof.SocketActivityTimeout\",-1)", kTRUE);
 
       if (gGrid)
        gProof->Exec("TGrid::Connect(\"alien://\")",kTRUE);
@@ -1244,7 +1214,7 @@ Bool_t AliReconstruction::Run(const char* input)
 //_____________________________________________________________________________
 void AliReconstruction::InitRawReader(const char* input)
 {
-  AliCodeTimerAuto("",0);
+  AliCodeTimerAuto("");
 
   // Init raw-reader and
   // set the input in case of raw data
@@ -1275,7 +1245,7 @@ void AliReconstruction::InitRun(const char* input)
 {
   // Initialization of raw-reader,
   // run number, CDB etc.
-  AliCodeTimerAuto("",0);
+  AliCodeTimerAuto("");
   AliSysInfo::AddStamp("Start");
 
   // Initialize raw-reader if any
@@ -1303,7 +1273,7 @@ void AliReconstruction::Begin(TTree *)
   // going into the event loop
   // Should follow the TSelector convention
   // i.e. initialize only the object on the client side
-  AliCodeTimerAuto("",0);
+  AliCodeTimerAuto("");
 
   AliReconstruction *reco = NULL;
   if (fInput) {
@@ -1356,11 +1326,6 @@ void AliReconstruction::Begin(TTree *)
   }
   AliSysInfo::AddStamp("LoadTriggerScalersCDB");
 
-  if (!LoadCTPTimeParamsCDB()) {
-    Abort("LoadCTPTimeParamsCDB", TSelector::kAbortProcess);
-    return;
-  }
-  AliSysInfo::AddStamp("LoadCTPTimeParamsCDB");
 
   // Read the reconstruction parameters from OCDB
   if (!InitRecoParams()) {
@@ -1389,7 +1354,7 @@ void AliReconstruction::SlaveBegin(TTree*)
   // Initialization related to run-loader,
   // vertexer, trackers, recontructors
   // In proof mode it is executed on the slave
-  AliCodeTimerAuto("",0);
+  AliCodeTimerAuto("");
 
   TProofOutputFile *outProofFile = NULL;
   if (fInput) {
@@ -1559,7 +1524,7 @@ Bool_t AliReconstruction::Process(Long64_t entry)
 {
   // run the reconstruction over a single entry
   // from the chain with raw data
-  AliCodeTimerAuto("",0);
+  AliCodeTimerAuto("");
 
   TTree *currTree = fChain->GetTree();
   AliRawVEvent *event = NULL;
@@ -1590,7 +1555,7 @@ Bool_t AliReconstruction::ProcessEvent(Int_t iEvent)
   // run the reconstruction over a single event
   // The event loop is steered in Run method
 
-  AliCodeTimerAuto("",0);
+  AliCodeTimerAuto("");
 
   if (iEvent >= fRunLoader->GetNumberOfEvents()) {
     fRunLoader->SetEventNumber(iEvent);
@@ -1623,7 +1588,7 @@ Bool_t AliReconstruction::ProcessEvent(Int_t iEvent)
       if (reconstructor && fRecoParam.GetDetRecoParamArray(iDet)) {
         const AliDetectorRecoParam *par = fRecoParam.GetDetRecoParam(iDet);
         reconstructor->SetRecoParam(par);
-       reconstructor->SetEventInfo(&fEventInfo);
+        reconstructor->SetEventInfo(&fEventInfo);
         if (fRunQA) {
           AliQAManager::QAManager()->SetRecoParam(iDet, par) ; 
           AliQAManager::QAManager()->SetEventSpecie(AliRecoParam::Convert(par->GetEventSpecie())) ;
@@ -1633,7 +1598,7 @@ Bool_t AliReconstruction::ProcessEvent(Int_t iEvent)
   }
 
     // QA on single raw 
-  if (fRunQA) {
+  if (fRunQA && IsInTasks(AliQAv1::kRAWS)) {
     AliQAManager::QAManager()->SetEventSpecie(fRecoParam.GetEventSpecie()) ;
     AliQAManager::QAManager()->RunOneEvent(fRawReader) ;  
   }
@@ -1765,6 +1730,7 @@ Bool_t AliReconstruction::ProcessEvent(Int_t iEvent)
     // Propagate track to the beam pipe  (if not already done by ITS)
     //
     const Int_t ntracks = fesd->GetNumberOfTracks();
+    const Double_t kBz = fesd->GetMagneticField();
     const Double_t kRadius  = 2.8; //something less than the beam pipe radius
 
     TObjArray trkArray;
@@ -1782,7 +1748,7 @@ Bool_t AliReconstruction::ProcessEvent(Int_t iEvent)
       ok = kFALSE;
       if (tpcTrack)
        ok = AliTracker::
-         PropagateTrackToBxByBz(tpcTrack,kRadius,track->GetMass(),kMaxStep,kFALSE);
+         PropagateTrackTo(tpcTrack,kRadius,track->GetMass(),kMaxStep,kFALSE);
 
       if (ok) {
        Int_t n=trkArray.GetEntriesFast();
@@ -1794,10 +1760,8 @@ Bool_t AliReconstruction::ProcessEvent(Int_t iEvent)
       if (track->IsOn(AliESDtrack::kITSrefit)) continue;
 
       AliTracker::
-         PropagateTrackToBxByBz(track,kRadius,track->GetMass(),kMaxStep,kFALSE);
-      Double_t x[3]; track->GetXYZ(x);
-      Double_t b[3]; AliTracker::GetBxByBz(x,b);
-      track->RelateToVertexBxByBz(fesd->GetPrimaryVertexSPD(), b, kVeryBig);
+         PropagateTrackTo(track,kRadius,track->GetMass(),kMaxStep,kFALSE);
+      track->RelateToVertex(fesd->GetPrimaryVertexSPD(), kBz, kVeryBig);
 
     }
 
@@ -1832,9 +1796,7 @@ Bool_t AliReconstruction::ProcessEvent(Int_t iEvent)
              fesd->SetPrimaryVertexTracks(pvtx);
              for (Int_t i=0; i<ntracks; i++) {
                 AliESDtrack *t = fesd->GetTrack(i);
-                 Double_t x[3]; t->GetXYZ(x);
-                 Double_t b[3]; AliTracker::GetBxByBz(x,b);
-                 t->RelateToVertexBxByBz(pvtx, b, kVeryBig);
+                 t->RelateToVertex(pvtx, kBz, kVeryBig);
              } 
           }
        }
@@ -1858,9 +1820,7 @@ Bool_t AliReconstruction::ProcessEvent(Int_t iEvent)
              fesd->SetPrimaryVertexTPC(pvtx);
              for (Int_t i=0; i<ntracks; i++) {
                 AliESDtrack *t = fesd->GetTrack(i);
-                 Double_t x[3]; t->GetXYZ(x);
-                 Double_t b[3]; AliTracker::GetBxByBz(x,b);
-                 t->RelateToVertexTPCBxByBz(pvtx, b, kVeryBig);
+                 t->RelateToVertexTPC(pvtx, kBz, kVeryBig);
              } 
           }
        }
@@ -1886,14 +1846,14 @@ Bool_t AliReconstruction::ProcessEvent(Int_t iEvent)
     // write ESD
     if (fCleanESD) CleanESD(fesd);
 
-  if (fRunQA) {
+  if (fRunQA && IsInTasks(AliQAv1::kESDS)) {
     AliQAManager::QAManager()->SetEventSpecie(fRecoParam.GetEventSpecie()) ;
     AliQAManager::QAManager()->RunOneEvent(fesd) ; 
   }
   if (fRunGlobalQA) {
     AliQADataMaker *qadm = AliQAManager::QAManager()->GetQADataMaker(AliQAv1::kGLOBAL);
       qadm->SetEventSpecie(fRecoParam.GetEventSpecie()) ;
-    if (qadm && fQATasks.Contains(Form("%d", AliQAv1::kESDS)))
+    if (qadm && IsInTasks(AliQAv1::kESDS))
       qadm->Exec(AliQAv1::kESDS, fesd);
   }
 
@@ -1949,7 +1909,7 @@ void AliReconstruction::SlaveTerminate()
   // Finalize the run on the slave side
   // Called after the exit
   // from the event loop
-  AliCodeTimerAuto("",0);
+  AliCodeTimerAuto("");
 
   if (fIsNewRunLoader) { // galice.root didn't exist
     fRunLoader->WriteHeader("OVERWRITE");
@@ -2007,9 +1967,9 @@ void AliReconstruction::SlaveTerminate()
   if (fRunGlobalQA) {
     AliQADataMaker *qadm = AliQAManager::QAManager()->GetQADataMaker(AliQAv1::kGLOBAL);
     if (qadm) {
-      if (fQATasks.Contains(Form("%d", AliQAv1::kRECPOINTS))) 
+      if (IsInTasks(AliQAv1::kRECPOINTS)) 
         qadm->EndOfCycle(AliQAv1::kRECPOINTS);
-      if (fQATasks.Contains(Form("%d", AliQAv1::kESDS))) 
+      if (IsInTasks(AliQAv1::kESDS)) 
         qadm->EndOfCycle(AliQAv1::kESDS);
       qadm->Finish();
     }
@@ -2067,7 +2027,7 @@ void AliReconstruction::Terminate()
 {
   // Create tags for the events in the ESD tree (the ESD tree is always present)
   // In case of empty events the tags will contain dummy values
-  AliCodeTimerAuto("",0);
+  AliCodeTimerAuto("");
 
   // Do not call the ESD tag creator in case of PROOF-based reconstruction
   if (!fInput) {
@@ -2085,7 +2045,7 @@ Bool_t AliReconstruction::RunLocalEventReconstruction(const TString& detectors)
 // run the local reconstruction
 
   static Int_t eventNr=0;
-  AliCodeTimerAuto("",0)
+  AliCodeTimerAuto("")
 
   TString detStr = detectors;
   for (Int_t iDet = 0; iDet < kNDetectors; iDet++) {
@@ -2113,7 +2073,7 @@ Bool_t AliReconstruction::RunLocalEventReconstruction(const TString& detectors)
       AliInfo(Form("converting raw data digits into root objects for %s", 
                   fgkDetectorName[iDet]));
 //      AliCodeTimerAuto(Form("converting raw data digits into root objects for %s", 
-//                            fgkDetectorName[iDet]),0);
+//                            fgkDetectorName[iDet]));
       loader->LoadDigits("update");
       loader->CleanDigits();
       loader->MakeDigitsContainer();
@@ -2124,7 +2084,7 @@ Bool_t AliReconstruction::RunLocalEventReconstruction(const TString& detectors)
     }
     // local reconstruction
     AliInfo(Form("running reconstruction for %s", fgkDetectorName[iDet]));
-    //AliCodeTimerAuto(Form("running reconstruction for %s", fgkDetectorName[iDet]),0);
+    //AliCodeTimerAuto(Form("running reconstruction for %s", fgkDetectorName[iDet]));
     loader->LoadRecPoints("update");
     loader->CleanRecPoints();
     loader->MakeRecPointsContainer();
@@ -2139,14 +2099,14 @@ Bool_t AliReconstruction::RunLocalEventReconstruction(const TString& detectors)
         if (fStopOnError) return kFALSE;
       } else {
         reconstructor->Reconstruct(digitsTree, clustersTree);
-        if (fRunQA) {
+        if (fRunQA && IsInTasks(AliQAv1::kDIGITSR)) {
           AliQAManager::QAManager()->SetEventSpecie(fRecoParam.GetEventSpecie()) ;
           AliQAManager::QAManager()->RunOneEventInOneDetector(iDet, digitsTree) ; 
         }
       }
       loader->UnloadDigits();
     }
-               if (fRunQA) {
+               if (fRunQA && IsInTasks(AliQAv1::kRECPOINTS)) {
       AliQAManager::QAManager()->SetEventSpecie(fRecoParam.GetEventSpecie()) ;
                        AliQAManager::QAManager()->RunOneEventInOneDetector(iDet, clustersTree) ; 
     }
@@ -2167,7 +2127,7 @@ Bool_t AliReconstruction::RunSPDTrackleting(AliESDEvent*& esd)
 {
 // run the SPD trackleting (for SPD efficiency purpouses)
 
-  AliCodeTimerAuto("",0)
+  AliCodeTimerAuto("")
 
   Double_t vtxPos[3] = {0, 0, 0};
   Double_t vtxErr[3] = {0.0, 0.0, 0.0};
@@ -2217,7 +2177,7 @@ Bool_t AliReconstruction::RunVertexFinder(AliESDEvent*& esd)
 {
 // run the barrel tracking
 
-  AliCodeTimerAuto("",0)
+  AliCodeTimerAuto("")
 
   AliVertexer *vertexer = CreateVertexer();
   if (!vertexer) return kFALSE;
@@ -2279,7 +2239,7 @@ Bool_t AliReconstruction::RunHLTTracking(AliESDEvent*& esd)
 {
 // run the HLT barrel tracking
 
-  AliCodeTimerAuto("",0)
+  AliCodeTimerAuto("")
 
   if (!fRunLoader) {
     AliError("Missing runLoader!");
@@ -2335,7 +2295,7 @@ Bool_t AliReconstruction::RunMuonTracking(AliESDEvent*& esd)
 {
 // run the muon spectrometer tracking
 
-  AliCodeTimerAuto("",0)
+  AliCodeTimerAuto("")
 
   if (!fRunLoader) {
     AliError("Missing runLoader!");
@@ -2386,7 +2346,7 @@ Bool_t AliReconstruction::RunTracking(AliESDEvent*& esd)
 {
 // run the barrel tracking
   static Int_t eventNr=0;
-  AliCodeTimerAuto("",0)
+  AliCodeTimerAuto("")
 
   AliInfo("running tracking");
 
@@ -2571,7 +2531,7 @@ Bool_t AliReconstruction::FillESD(AliESDEvent*& esd, const TString& detectors)
 {
 // fill the event summary data
 
-  AliCodeTimerAuto("",0)
+  AliCodeTimerAuto("")
     static Int_t eventNr=0; 
   TString detStr = detectors;
   
@@ -2628,7 +2588,7 @@ Bool_t AliReconstruction::FillTriggerESD(AliESDEvent*& esd)
   // stored in Trigger.root file and fills
   // the corresponding esd entries
 
-  AliCodeTimerAuto("",0)
+  AliCodeTimerAuto("")
   
   AliInfo("Filling trigger information into the ESD");
 
@@ -2742,12 +2702,7 @@ Bool_t AliReconstruction::InitRunLoader()
   if (gAlice) delete gAlice;
   gAlice = NULL;
 
-  TFile *gafile = TFile::Open(fGAliceFileName.Data());
-  //  if (!gSystem->AccessPathName(fGAliceFileName.Data())) { // galice.root exists
-  if (gafile) { // galice.root exists
-    gafile->Close();
-    delete gafile;
-
+  if (!gSystem->AccessPathName(fGAliceFileName.Data())) { // galice.root exists
     // load all base libraries to get the loader classes
     TString libs = gSystem->GetLibraries();
     for (Int_t iDet = 0; iDet < kNDetectors; iDet++) {
@@ -3369,7 +3324,7 @@ Bool_t AliReconstruction::GetEventInfo()
 {
   // Fill the event info object
   // ...
-  AliCodeTimerAuto("",0)
+  AliCodeTimerAuto("")
 
   AliCentralTrigger *aCTP = NULL;
   if (fRawReader) {
index 3ce54c5d716ae0d5f0b1797ee45d6e2da6ebad5d..62bbfefe977a73899c29de8ab37abbb6f14c5f02 100644 (file)
@@ -44,11 +44,10 @@ class AliRunInfo;
 class AliGRPObject;
 class THashTable;
 class AliTriggerRunScalers;
-class AliCTPTimeParams;
-
 #include "AliQAv1.h"
 #include "AliEventInfo.h"
 #include "AliRecoParam.h"
+#include "AliTriggerRunScalers.h"
 
 class AliReconstruction: public TSelector {
 public:
@@ -145,6 +144,9 @@ public:
   void    InitQA();
   void    MergeQA(const char *fileName = NULL); 
   void    SetWriteQAExpert() { fWriteQAExpertData = kTRUE ; }
+  Bool_t  IsRunQA() { return fRunQA ; } 
+  Bool_t  IsRunGlobalQA() { return fRunGlobalQA ; }
+  Bool_t  IsInTasks(AliQAv1::TASKINDEX_t tsk) { return fQATasks.Contains(Form("%d", tsk)) ; }
 
   // Plane Efficiency Evaluation
   void    SetRunPlaneEff(Bool_t flag=kFALSE)  {fRunPlaneEff = flag;}
@@ -169,7 +171,6 @@ private:
   Bool_t         SetRunNumberFromData();
   Bool_t         LoadCDB();
   Bool_t         LoadTriggerScalersCDB();
-  Bool_t         LoadCTPTimeParamsCDB();
   Bool_t         RunLocalEventReconstruction(const TString& detectors);
   Bool_t         RunVertexFinder(AliESDEvent*& esd);
   Bool_t         RunHLTTracking(AliESDEvent*& esd);
@@ -252,7 +253,6 @@ private:
   AliRunInfo*    fRunInfo;            // an object which contains essential global conditions information
   AliEventInfo   fEventInfo;          // an object which contains essential event information
   AliTriggerRunScalers* fRunScalers;  // an object which contains the trigger counters for xsection
-  AliCTPTimeParams* fCTPTimeParams;   // an object which contains the trigger delays
   AliRunLoader*  fRunLoader;          //! current run loader object
   AliRawReader*  fRawReader;          //! current raw data reader
   AliRawReader*  fParentRawReader;    //! parent raw data reader in case of AliRawReaderHLT