ROOT logo
void makeEventList(const char* file, Double_t ptMinHighPt = 8., Double_t ptMinV0s = 3.)
{
  ///////////////////
  // make event lists based on the filtered ESD trees (Filter_Events.root)
  // WARNING: output of this needs to be parsed by the makeEventList.sh script!

  TFile f(file);

  TTree* c = NULL;
  Long_t nEvents=0;

  c=(TTree*)f.Get("highPt");
  if (c)
  {
    if (c->GetEntries()>0)
    { 
      printf("offlineTrigger: highPt\n");
      c->SetScanField(nEvents);
      c->Scan("esdTrack.Pt():runNumber:evtNumberInFile:fileName.GetString():gid:evtTimeStamp",Form("esdTrack.Pt()>%lf",ptMinHighPt),"col=.2f:8.d:8.d:130.s:15.lu:12.d");
    }
  }

  c=(TTree*)f.Get("V0s");
  if (c)
  {
    if (c->GetEntries()>0)
    { 
      printf("offlineTrigger: V0s\n");
      c->SetScanField(nEvents);
      c->Scan("v0.Pt():runNumber:evtNumberInFile:fileName.GetString():gid:evtTimeStamp",Form("v0.Pt()>%lf",ptMinV0s),"col=.2f:8.d:8.d:130.s:15.lu:12.d");
    }
  }

  c=(TTree*)f.Get("Laser");
  if (c)
  {
    if (c->GetEntries()>0)
    { 
      printf("offlineTrigger: Laser\n");
      c->SetScanField(nEvents);
      c->Scan("runNumber:runNumber:evtNumberInFile:fileName.GetString():gid:evtTimeStamp","","col=8.d:8.d:8.d:130.s:15.lu:12.d");
    }
  }

  c=(TTree*)f.Get("CosmicPairs");
  if (c)
  {
    if (c->GetEntries()>0)
    { 
      printf("offlineTrigger: CosmicPairs\n");
      TCut ptCut="abs(t0.fP[4])<0.33"; //cut on 1/pt < 0.33
      TCut cutDCA="abs(0.5*(t0.fD-t1.fD))>5&&abs(0.5*(t0.fD-t1.fD))<80"; //tracks crossing the inner field cage (80cm)
      TCut cutCross="t0.fOp.fP[1]*t1.fOp.fP[1]<0"; //tracks crossing central electrode
      c->SetScanField(nEvents);
      c->Scan("runNumber:runNumber:evtNumberInFile:fileName.GetString():gid:evtTimeStamp", ptCut && cutDCA && cutCross,"col=8.d:8.d:8.d:130.s:15.lu:12.d");
    }
  }
}//dumpList

 makeEventList.C:1
 makeEventList.C:2
 makeEventList.C:3
 makeEventList.C:4
 makeEventList.C:5
 makeEventList.C:6
 makeEventList.C:7
 makeEventList.C:8
 makeEventList.C:9
 makeEventList.C:10
 makeEventList.C:11
 makeEventList.C:12
 makeEventList.C:13
 makeEventList.C:14
 makeEventList.C:15
 makeEventList.C:16
 makeEventList.C:17
 makeEventList.C:18
 makeEventList.C:19
 makeEventList.C:20
 makeEventList.C:21
 makeEventList.C:22
 makeEventList.C:23
 makeEventList.C:24
 makeEventList.C:25
 makeEventList.C:26
 makeEventList.C:27
 makeEventList.C:28
 makeEventList.C:29
 makeEventList.C:30
 makeEventList.C:31
 makeEventList.C:32
 makeEventList.C:33
 makeEventList.C:34
 makeEventList.C:35
 makeEventList.C:36
 makeEventList.C:37
 makeEventList.C:38
 makeEventList.C:39
 makeEventList.C:40
 makeEventList.C:41
 makeEventList.C:42
 makeEventList.C:43
 makeEventList.C:44
 makeEventList.C:45
 makeEventList.C:46
 makeEventList.C:47
 makeEventList.C:48
 makeEventList.C:49
 makeEventList.C:50
 makeEventList.C:51
 makeEventList.C:52
 makeEventList.C:53
 makeEventList.C:54
 makeEventList.C:55
 makeEventList.C:56
 makeEventList.C:57
 makeEventList.C:58
 makeEventList.C:59
 makeEventList.C:60