fUseHLTData(),
fRunInfo(NULL),
fEventInfo(),
+ fRunScalers(NULL),
fRunLoader(NULL),
fRawReader(NULL),
fUseHLTData(rec.fUseHLTData),
fRunInfo(NULL),
fEventInfo(),
+ fRunScalers(NULL),
fRunLoader(NULL),
fRawReader(NULL),
fEventInfo = rec.fEventInfo;
+ delete fRunScalers; fRunScalers = NULL;
+ if (rec.fRunScalers) fRunScalers = new AliTriggerRunScalers(*rec.fRunScalers);
+
+
fRunLoader = NULL;
fRawReader = NULL;
fParentRawReader = NULL;
delete fListOfCosmicTriggers;
}
delete fGRPData;
+ delete fRunScalers;
fOptions.Delete();
if (fAlignObjArray) {
fAlignObjArray->Delete();
}
return kTRUE;
}
+//_____________________________________________________________________________
+Bool_t AliReconstruction::LoadTriggerScalersCDB()
+{
+ AliCodeTimerAuto("");
+
+ AliCDBEntry* entry = AliCDBManager::Instance()->Get("GRP/CTP/Scalers");
+ if (entry) {
+
+ AliInfo("Found an AliTriggerRunScalers in GRP/CTP/Scalers, reading it");
+ fRunScalers = dynamic_cast<AliTriggerRunScalers*> (entry->GetObject());
+ entry->SetOwner(0);
+ }
+ return kTRUE;
+}
//_____________________________________________________________________________
Bool_t AliReconstruction::Run(const char* input)
{
// Here one has to add the filling interaction records
}
+ //Scalers
+ if(fRunScalers){
+ //AliTimeStamp* timestamp = new AliTimeStamp(esd->GetOrbitNumber(), esd->GetPeriodNumber(), esd->GetBunchCrossNumber());
+ AliTimeStamp* timestamp = new AliTimeStamp(14322992, 5, (ULong64_t)486238);
+ AliESDHeader* esdheader = fesd->GetHeader();
+ for(Int_t i=0;i<50;i++){
+ if((1<<i) & esd->GetTriggerMask()){
+ AliTriggerScalersESD* scalesd = fRunScalers->GetScalersForEventClass( timestamp, i);
+ esdheader->SetTriggerScalersRecord(scalesd);
+ }
+ }
+ }
return kTRUE;
}
class AliRunInfo;
class AliGRPObject;
class THashTable;
+class AliTriggerRunScalers;
#include "AliQAv1.h"
#include "AliEventInfo.h"
#include "AliRecoParam.h"
+#include "AliTriggerRunScalers.h"
class AliReconstruction: public TSelector {
public:
void SetCDBLock();
Bool_t SetRunNumberFromData();
Bool_t LoadCDB();
+ Bool_t LoadTriggerScalersCDB();
Bool_t RunLocalEventReconstruction(const TString& detectors);
Bool_t RunVertexFinder(AliESDEvent*& esd);
Bool_t RunHLTTracking(AliESDEvent*& esd);
TString fUseHLTData; // Detectors for which the HLT data is used as input
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
AliRunLoader* fRunLoader; //! current run loader object
AliRawReader* fRawReader; //! current raw data reader
AliRawReader* fParentRawReader; //! parent raw data reader in case of AliRawReaderHLT
TTree* fChain; //! The raw-data chain in case of AliRawReaderChain
- ClassDef(AliReconstruction, 33) // class for running the reconstruction
+ ClassDef(AliReconstruction, 34) // class for running the reconstruction
};
#endif