]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
Proper filling of the EMCAL and PHOS clusters in the tags (ESD+AOD) (Panos)
authormorsch <morsch@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 28 Apr 2009 12:41:17 +0000 (12:41 +0000)
committermorsch <morsch@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 28 Apr 2009 12:41:17 +0000 (12:41 +0000)
STEER/AliAODTagCreator.cxx
STEER/AliESDTagCreator.cxx

index ea0dc14ec60e348835346f439e4e009da5c96c28..ec457688270aaf1e80c4f68f41e628bc65a49481 100644 (file)
@@ -27,6 +27,7 @@
 #include <TSystem.h>
 #include <TChain.h>
 #include <TLorentzVector.h>
+#include <TRefArray.h>
 
 //ROOT-AliEn
 #include <TGrid.h>
@@ -187,7 +188,6 @@ void AliAODTagCreator::CreateAODTags(Int_t fFirstEvent, Int_t fLastEvent, TList
     if(fLastEvent == -1) lastEvent = (Int_t)fChain->GetEntries();
     else lastEvent = fLastEvent;
 
-
     char fileName[256];
     sprintf(fileName, "Run%d.Event%d_%d.AOD.tag.root", 
            fAODEvent->GetRunNumber(), fFirstEvent, lastEvent );
@@ -218,8 +218,7 @@ void AliAODTagCreator::CreateTag(TChain* chain, const char *type) {
     // Private method that creates tag files
     //
 
-
-    //reading the esd tag file                                                  
+    //reading the esd tag file 
     fTreeTEsd = new TChain("T");
     const char * tagPattern = "ESD.tag";
     // Open the working directory
@@ -230,8 +229,7 @@ void AliAODTagCreator::CreateTag(TChain* chain, const char *type) {
        if (strstr(name,tagPattern)) fTreeTEsd->Add(name);
     }//directory loop
     AliInfo(Form("Chained tag files: %d", fTreeTEsd->GetEntries()));
-  
-    
+      
     fChain = chain;
     
     TString fSession = type;
@@ -300,7 +298,7 @@ void AliAODTagCreator::CreateTags(const char* type)
     Int_t ntags    = 0;
     Int_t tagentry = 0;
     const TClonesArray *evTagList = 0;
-
+   
     for (Int_t iEventNumber = 0; iEventNumber < nEvents; iEventNumber++) {
        // Copy old tag information
        if (iEventNumber >= ntags) {
@@ -394,6 +392,8 @@ void AliAODTagCreator::FillEventTag(AliAODEvent* aod, AliEventTag* evTag)
     Int_t   nEl1GeV = 0, nEl3GeV = 0, nEl10GeV = 0;
     Float_t maxPt =  .0, meanPt = .0, totalP =  .0;
 
+    TRefArray tmp;
+
     Int_t nTracks = fAODEvent->GetNTracks();
     // loop over vertices 
     Int_t nVtxs = fAODEvent->GetNumberOfVertices();
@@ -492,6 +492,11 @@ void AliAODTagCreator::FillEventTag(AliAODEvent* aod, AliEventTag* evTag)
     evTag->SetNumOfElectronsAbove1GeV(nEl1GeV);
     evTag->SetNumOfElectronsAbove3GeV(nEl3GeV);
     evTag->SetNumOfElectronsAbove10GeV(nEl10GeV);
+
+    tmp.Clear();
+    evTag->SetNumOfPHOSClusters(fAODEvent->GetPHOSClusters(&tmp));
+    tmp.Clear();
+    evTag->SetNumOfEMCALClusters(fAODEvent->GetEMCALClusters(&tmp));
        
     evTag->SetTotalMomentum(totalP);
     evTag->SetMeanPt(meanPt);
index ac5723755d9ef8e8d1dd9ff33cde1ab7a8b57a70..1635d263a0202c449f3ef6b6afea41cff8fdb738 100644 (file)
@@ -31,6 +31,7 @@
 #include <TLorentzVector.h>
 #include <TMap.h>
 #include <TTimeStamp.h>
+#include <TRefArray.h>
 
 //ROOT-AliEn
 #include <TGrid.h>
@@ -257,7 +258,8 @@ void AliESDTagCreator::CreateTag(TChain* chain, const char *type) {
   localFileName += ".ESD.tag.root";
 
   TString fileName;
-  
+  TRefArray tmp;
   if(fStorage == 0) {
     fileName = localFileName.Data();      
     AliInfo(Form("Writing tags to local file: %s",fileName.Data()));
@@ -504,8 +506,10 @@ void AliESDTagCreator::CreateTag(TChain* chain, const char *type) {
     evTag->SetNumOfElectronsAbove3GeV(nEl3GeV);
     evTag->SetNumOfElectronsAbove10GeV(nEl10GeV);
     
-    evTag->SetNumOfPHOSClusters(esd->GetNumberOfPHOSClusters());
-    evTag->SetNumOfEMCALClusters(esd->GetNumberOfEMCALClusters());
+    tmp.Clear();
+    evTag->SetNumOfPHOSClusters(esd->GetPHOSClusters(&tmp));
+    tmp.Clear();
+    evTag->SetNumOfEMCALClusters(esd->GetEMCALClusters(&tmp));
     
     evTag->SetTotalMomentum(totalP);
     evTag->SetMeanPt(meanPt);
@@ -595,6 +599,7 @@ void AliESDTagCreator::CreateTag(TFile* file, const char *guid, const char *md5,
   Int_t fVertexflag;
   Int_t iRunNumber = 0;
   TString fVertexName;
+  TRefArray tmp;
 
   AliRunTag *tag = new AliRunTag();
   AliEventTag *evTag = new AliEventTag();
@@ -837,8 +842,10 @@ void AliESDTagCreator::CreateTag(TFile* file, const char *guid, const char *md5,
     evTag->SetNumOfElectronsAbove3GeV(nEl3GeV);
     evTag->SetNumOfElectronsAbove10GeV(nEl10GeV);
     
-    evTag->SetNumOfPHOSClusters(esd->GetNumberOfPHOSClusters());
-    evTag->SetNumOfEMCALClusters(esd->GetNumberOfEMCALClusters());
+    tmp.Clear();
+    evTag->SetNumOfPHOSClusters(esd->GetPHOSClusters(&tmp));
+    tmp.Clear();
+    evTag->SetNumOfEMCALClusters(esd->GetEMCALClusters(&tmp));
     
     evTag->SetTotalMomentum(totalP);
     evTag->SetMeanPt(meanPt);
@@ -938,6 +945,7 @@ void AliESDTagCreator::CreateTag(TFile* file, const char *filepath, Int_t Counte
   Int_t fVertexflag;
   Int_t iRunNumber = 0;
   TString fVertexName;
+  TRefArray tmp;
 
   AliRunTag *tag = new AliRunTag();
   AliEventTag *evTag = new AliEventTag();
@@ -1171,8 +1179,10 @@ void AliESDTagCreator::CreateTag(TFile* file, const char *filepath, Int_t Counte
     evTag->SetNumOfElectronsAbove3GeV(nEl3GeV);
     evTag->SetNumOfElectronsAbove10GeV(nEl10GeV);
     
-    evTag->SetNumOfPHOSClusters(esd->GetNumberOfPHOSClusters());
-    evTag->SetNumOfEMCALClusters(esd->GetNumberOfEMCALClusters());
+    tmp.Clear();
+    evTag->SetNumOfPHOSClusters(esd->GetPHOSClusters(&tmp));
+    tmp.Clear();
+    evTag->SetNumOfEMCALClusters(esd->GetEMCALClusters(&tmp));
     
     evTag->SetTotalMomentum(totalP);
     evTag->SetMeanPt(meanPt);
@@ -1272,6 +1282,7 @@ void AliESDTagCreator::CreateESDTags(Int_t fFirstEvent, Int_t fLastEvent, AliGRP
   Int_t fVertexflag;
   Int_t iRunNumber = 0;
   TString fVertexName("default");
+  TRefArray tmp;
   
   AliInfo(Form("Creating the ESD tags......."));       
 
@@ -1522,8 +1533,10 @@ void AliESDTagCreator::CreateESDTags(Int_t fFirstEvent, Int_t fLastEvent, AliGRP
     evTag->SetNumOfElectronsAbove3GeV(nEl3GeV);
     evTag->SetNumOfElectronsAbove10GeV(nEl10GeV);
     
-    evTag->SetNumOfPHOSClusters(esd->GetNumberOfPHOSClusters());
-    evTag->SetNumOfEMCALClusters(esd->GetNumberOfEMCALClusters());
+    tmp.Clear();
+    evTag->SetNumOfPHOSClusters(esd->GetPHOSClusters(&tmp));
+    tmp.Clear();
+    evTag->SetNumOfEMCALClusters(esd->GetEMCALClusters(&tmp));
     
     evTag->SetTotalMomentum(totalP);
     evTag->SetMeanPt(meanPt);