#include "TH1F.h"
#include "TList.h"
#include "TBits.h"
#include "AliLog.h"
#include "AliESDEvent.h"
#include "AliESDVertex.h"
#include "AliCFEventRecCuts.h"
ClassImp(AliCFEventRecCuts)
AliCFEventRecCuts::AliCFEventRecCuts() :
AliCFCutBase(),
fNTracksMin(-1),
fNTracksMax(1000000),
fRequireVtxCuts(kFALSE),
fVtxXMax(1.e99),
fVtxYMax(1.e99),
fVtxZMax(1.e99),
fVtxXMin(-1.e99),
fVtxYMin(-1.e99),
fVtxZMin(-1.e99),
fVtxXResMax(1.e99),
fVtxYResMax(1.e99),
fVtxZResMax(1.e99),
fVtxNCtrbMin(0),
fVtxNCtrbMax((Int_t)1.e9),
fVtxTPC(0),
fVtxSPD(0),
fBitMap(0x0)
{
fBitMap=new TBits(0);
Initialise();
}
AliCFEventRecCuts::AliCFEventRecCuts(Char_t* name, Char_t* title) :
AliCFCutBase(name,title),
fNTracksMin(-1),
fNTracksMax(1000000),
fRequireVtxCuts(kFALSE),
fVtxXMax(1.e99),
fVtxYMax(1.e99),
fVtxZMax(1.e99),
fVtxXMin(-1.e99),
fVtxYMin(-1.e99),
fVtxZMin(-1.e99),
fVtxXResMax(1.e99),
fVtxYResMax(1.e99),
fVtxZResMax(1.e99),
fVtxNCtrbMin(0),
fVtxNCtrbMax((Int_t)1.e9),
fVtxTPC(0),
fVtxSPD(0),
fBitMap(0x0)
{
fBitMap=new TBits(0);
Initialise();
}
AliCFEventRecCuts::AliCFEventRecCuts(const AliCFEventRecCuts& c) :
AliCFCutBase(c),
fNTracksMin(c.fNTracksMin),
fNTracksMax(c.fNTracksMax),
fRequireVtxCuts(c.fRequireVtxCuts),
fVtxXMax(c.fVtxXMax),
fVtxYMax(c.fVtxYMax),
fVtxZMax(c.fVtxZMax),
fVtxXMin(c.fVtxXMin),
fVtxYMin(c.fVtxYMin),
fVtxZMin(c.fVtxZMin),
fVtxXResMax(c.fVtxXResMax),
fVtxYResMax(c.fVtxYResMax),
fVtxZResMax(c.fVtxZResMax),
fVtxNCtrbMin(c.fVtxNCtrbMin),
fVtxNCtrbMax(c.fVtxNCtrbMax),
fVtxTPC(c.fVtxTPC),
fVtxSPD(c.fVtxSPD),
fBitMap(c.fBitMap)
{
for (Int_t i=0; i<c.kNCuts; i++){
for (Int_t j=0; j<c.kNStepQA; j++){
if(c.fhQA[i][j]) fhQA[i][j] = (TH1F*)c.fhQA[i][j]->Clone();
}
}
}
AliCFEventRecCuts::~AliCFEventRecCuts() {
for (Int_t i=0; i<kNCuts; i++){
for (Int_t j=0; j<kNStepQA; j++){
if(fhQA[i][j]) delete fhQA[i][j];
}
}
if(fBitMap)delete fBitMap;
}
void AliCFEventRecCuts::Initialise()
{
for(Int_t i=0; i<kNCuts; i++){
for(Int_t j =0; j<kNStepQA; j++){
fhQA[i][j]=0x0;
}
}
}
AliCFEventRecCuts& AliCFEventRecCuts::operator=(const AliCFEventRecCuts& c)
{
if (this != &c) {
AliCFCutBase::operator=(c) ;
fNTracksMin=c.fNTracksMin;
fNTracksMax=c.fNTracksMax;
fRequireVtxCuts=c.fRequireVtxCuts;
fVtxXMax=c.fVtxXMax;
fVtxYMax=c.fVtxYMax;
fVtxZMax=c.fVtxZMax;
fVtxXMin=c.fVtxXMin;
fVtxYMin=c.fVtxYMin;
fVtxZMin=c.fVtxZMin;
fVtxXResMax=c.fVtxXResMax;
fVtxYResMax=c.fVtxYResMax;
fVtxZResMax=c.fVtxZResMax;
fVtxNCtrbMin=c.fVtxNCtrbMin;
fVtxNCtrbMax=c.fVtxNCtrbMax;
fVtxTPC=c.fVtxTPC;
fVtxSPD=c.fVtxSPD;
fBitMap=c.fBitMap;
}
for (Int_t i=0; i<c.kNCuts; i++){
for (Int_t j=0; j<c.kNStepQA; j++){
if(c.fhQA[i][j]) fhQA[i][j] = (TH1F*)c.fhQA[i][j]->Clone();
}
}
return *this ;
}
Bool_t AliCFEventRecCuts::IsSelected(TObject* obj) {
SelectionBitMap(obj);
if (fIsQAOn) FillHistograms(obj,0);
Bool_t isSelected = kTRUE;
for (UInt_t icut=0; icut<fBitMap->GetNbits();icut++)
if(!fBitMap->TestBitNumber(icut)) isSelected = kFALSE;
if (!isSelected) return kFALSE ;
if (fIsQAOn) FillHistograms(obj,1);
return kTRUE;
}
void AliCFEventRecCuts::SelectionBitMap(TObject* obj) {
for(Int_t j=0;j<kNCuts;j++)fBitMap->SetBitNumber(j,kFALSE);
AliESDEvent* esd = dynamic_cast<AliESDEvent *>(obj);
if ( !esd ) return;
for(Int_t j=0;j<kNCuts;j++)fBitMap->SetBitNumber(j,kTRUE);
Int_t nTracks = esd->GetNumberOfTracks();
if(nTracks<fNTracksMin || nTracks>fNTracksMax)
fBitMap->SetBitNumber(0,kFALSE);
if(fRequireVtxCuts){
const AliESDVertex* vtxESD = 0x0;
if (fVtxTPC) vtxESD = esd->GetPrimaryVertexTPC() ;
else if (fVtxSPD) vtxESD = esd->GetPrimaryVertexSPD() ;
else vtxESD = esd->GetPrimaryVertexTracks() ;
if(!vtxESD){
for(Int_t j=1;j<kNCuts;j++)fBitMap->SetBitNumber(j,kFALSE);
AliWarning("Cannot get vertex, skipping event");
return;
}
if (strcmp(vtxESD->GetName(), "default")==0){
AliWarning(Form(" No reconstructed vertex found, skipping event"));
for(Int_t j=1;j<kNCuts;j++)fBitMap->SetBitNumber(j,kFALSE);
return;
}
Double_t vtxPos[3];
vtxPos[0] = vtxESD->GetX();
vtxPos[1] = vtxESD->GetY();
vtxPos[2] = vtxESD->GetZ();
Double_t vtxRes[3];
vtxRes[0] = vtxESD->GetXRes();
vtxRes[1] = vtxESD->GetYRes();
vtxRes[2] = vtxESD->GetZRes();
Int_t nCtrb = vtxESD->GetNContributors();
if (vtxPos[0]>fVtxXMax || vtxPos[0]<fVtxXMin)
fBitMap->SetBitNumber(1,kFALSE);
if (vtxPos[1]>fVtxYMax || vtxPos[1]<fVtxYMin)
fBitMap->SetBitNumber(2,kFALSE);
if (vtxPos[2]>fVtxZMax || vtxPos[2]<fVtxZMin)
fBitMap->SetBitNumber(3,kFALSE);
if (vtxRes[0]==0 || vtxRes[0]>fVtxXResMax)
fBitMap->SetBitNumber(4,kFALSE);
if (vtxRes[1]==0 || vtxRes[1]>fVtxYResMax)
fBitMap->SetBitNumber(5,kFALSE);
if (vtxRes[2]==0 || vtxRes[2]>fVtxZResMax)
fBitMap->SetBitNumber(6,kFALSE);
if (nCtrb<fVtxNCtrbMin || nCtrb>fVtxNCtrbMax)
fBitMap->SetBitNumber(7,kFALSE);
}
return;
}
void AliCFEventRecCuts::FillHistograms(TObject* obj, Bool_t b)
{
if(!fIsQAOn) return;
AliESDEvent* esd = dynamic_cast<AliESDEvent *>(obj);
if (!esd ) return ;
Int_t index = -1;
index = ((b) ? 1 : 0);
Int_t nTracks = esd->GetNumberOfTracks();
fhQA[kNTracks][index]->Fill(nTracks);
const AliESDVertex* vtxESD = 0x0;
if (fVtxTPC) vtxESD = esd->GetPrimaryVertexTPC() ;
else if (fVtxSPD) vtxESD = esd->GetPrimaryVertexSPD() ;
else vtxESD = esd->GetPrimaryVertexTracks() ;
if(!vtxESD)return;
if (strcmp(vtxESD->GetName(), "default")==0)return;
fhQA[kVtxPosX] [index]->Fill(vtxESD->GetX());
fhQA[kVtxPosY] [index]->Fill(vtxESD->GetY());
fhQA[kVtxPosZ] [index]->Fill(vtxESD->GetZ());
fhQA[kVtxResX] [index]->Fill(vtxESD->GetXRes());
fhQA[kVtxResY] [index]->Fill(vtxESD->GetYRes());
fhQA[kVtxResZ] [index]->Fill(vtxESD->GetZRes());
fhQA[kVtxNCtrb][index]->Fill(vtxESD->GetNContributors());
}
void AliCFEventRecCuts::SetHistogramBins(Int_t index, Int_t nbins, Double_t *bins)
{
for(Int_t i=0;i<kNStepQA;i++){
if(!fhQA[index][i]){AliWarning("non-existing histogram!");
return;
}
fhQA[index][i]->GetXaxis()->Set(nbins,bins);
}
}
void AliCFEventRecCuts::SetHistogramBins(Int_t index, Int_t nbins, Double_t xmin, Double_t xmax)
{
for(Int_t i=0;i<kNStepQA;i++){
if(!fhQA[index][i]){AliWarning("non-existing histogram!");
return;
}
fhQA[index][i]->GetXaxis()->Set(nbins,xmin,xmax);
}
}
void AliCFEventRecCuts::DefineHistograms() {
Int_t color = 2;
if(!fIsQAOn) {
AliInfo(Form("No QA histos requested, Please first set the QA flag on!"));
return;
}
Char_t str[5];
for (Int_t i=0; i<kNStepQA; i++) {
if (i==0) snprintf(str,5," ");
else snprintf(str,5,"_cut");
fhQA[kNTracks][i] = new TH1F(Form("%s_NTracks%s",GetName(),str), "",501,-0.5,500.5);
fhQA[kVtxPosX][i] = new TH1F(Form("%s_Vtx_Pos_X%s",GetName(),str), "",100,-5.,5.);
fhQA[kVtxPosY][i] = new TH1F(Form("%s_Vtx_Pos_Y%s",GetName(),str), "",100,-5.,5.);
fhQA[kVtxPosZ][i] = new TH1F(Form("%s_Vtx_Pos_Z%s",GetName(),str), "",200,-50.,50.);
fhQA[kVtxResX][i] = new TH1F(Form("%s_Vtx_Res_X%s",GetName(),str), "",100,-1.,1.);
fhQA[kVtxResY][i] = new TH1F(Form("%s_Vtx_Res_Y%s",GetName(),str), "",100,-1.,1.);
fhQA[kVtxResZ][i] = new TH1F(Form("%s_Vtx_Res_Z%s",GetName(),str), "",100,-1.,1.);
fhQA[kVtxNCtrb][i] = new TH1F(Form("%s_Vtx_N_Ctrb%s",GetName(),str), "",1000,0.,1000.);
fhQA[kNTracks][i] ->SetXTitle("Number of ESD tracks");
fhQA[kVtxPosX][i] ->SetXTitle("Vertex Position X (cm)");
fhQA[kVtxPosY][i] ->SetXTitle("Vertex Position Y (cm)");
fhQA[kVtxPosZ][i] ->SetXTitle("Vertex Position Z (cm)");
fhQA[kVtxResX][i] ->SetXTitle("Vertex Resolution X (cm)");
fhQA[kVtxResY][i] ->SetXTitle("Vertex Resolution Y (cm)");
fhQA[kVtxResZ][i] ->SetXTitle("Vertex Resolution Z (cm)");
fhQA[kVtxNCtrb][i] ->SetXTitle("Number of contributors");
}
for(Int_t i=0; i<kNCuts; i++) fhQA[i][1]->SetLineColor(color);
}
void AliCFEventRecCuts::AddQAHistograms(TList *qaList) {
DefineHistograms();
for (Int_t j=0; j<kNStepQA; j++) {
for(Int_t i=0; i<kNCuts; i++)
qaList->Add(fhQA[i][j]);
}
}
AliCFEventRecCuts.cxx:100 AliCFEventRecCuts.cxx:101 AliCFEventRecCuts.cxx:102 AliCFEventRecCuts.cxx:103 AliCFEventRecCuts.cxx:104 AliCFEventRecCuts.cxx:105 AliCFEventRecCuts.cxx:106 AliCFEventRecCuts.cxx:107 AliCFEventRecCuts.cxx:108 AliCFEventRecCuts.cxx:109 AliCFEventRecCuts.cxx:110 AliCFEventRecCuts.cxx:111 AliCFEventRecCuts.cxx:112 AliCFEventRecCuts.cxx:113 AliCFEventRecCuts.cxx:114 AliCFEventRecCuts.cxx:115 AliCFEventRecCuts.cxx:116 AliCFEventRecCuts.cxx:117 AliCFEventRecCuts.cxx:118 AliCFEventRecCuts.cxx:119 AliCFEventRecCuts.cxx:120 AliCFEventRecCuts.cxx:121 AliCFEventRecCuts.cxx:122 AliCFEventRecCuts.cxx:123 AliCFEventRecCuts.cxx:124 AliCFEventRecCuts.cxx:125 AliCFEventRecCuts.cxx:126 AliCFEventRecCuts.cxx:127 AliCFEventRecCuts.cxx:128 AliCFEventRecCuts.cxx:129 AliCFEventRecCuts.cxx:130 AliCFEventRecCuts.cxx:131 AliCFEventRecCuts.cxx:132 AliCFEventRecCuts.cxx:133 AliCFEventRecCuts.cxx:134 AliCFEventRecCuts.cxx:135 AliCFEventRecCuts.cxx:136 AliCFEventRecCuts.cxx:137 AliCFEventRecCuts.cxx:138 AliCFEventRecCuts.cxx:139 AliCFEventRecCuts.cxx:140 AliCFEventRecCuts.cxx:141 AliCFEventRecCuts.cxx:142 AliCFEventRecCuts.cxx:143 AliCFEventRecCuts.cxx:144 AliCFEventRecCuts.cxx:145 AliCFEventRecCuts.cxx:146 AliCFEventRecCuts.cxx:147 AliCFEventRecCuts.cxx:148 AliCFEventRecCuts.cxx:149 AliCFEventRecCuts.cxx:150 AliCFEventRecCuts.cxx:151 AliCFEventRecCuts.cxx:152 AliCFEventRecCuts.cxx:153 AliCFEventRecCuts.cxx:154 AliCFEventRecCuts.cxx:155 AliCFEventRecCuts.cxx:156 AliCFEventRecCuts.cxx:157 AliCFEventRecCuts.cxx:158 AliCFEventRecCuts.cxx:159 AliCFEventRecCuts.cxx:160 AliCFEventRecCuts.cxx:161 AliCFEventRecCuts.cxx:162 AliCFEventRecCuts.cxx:163 AliCFEventRecCuts.cxx:164 AliCFEventRecCuts.cxx:165 AliCFEventRecCuts.cxx:166 AliCFEventRecCuts.cxx:167 AliCFEventRecCuts.cxx:168 AliCFEventRecCuts.cxx:169 AliCFEventRecCuts.cxx:170 AliCFEventRecCuts.cxx:171 AliCFEventRecCuts.cxx:172 AliCFEventRecCuts.cxx:173 AliCFEventRecCuts.cxx:174 AliCFEventRecCuts.cxx:175 AliCFEventRecCuts.cxx:176 AliCFEventRecCuts.cxx:177 AliCFEventRecCuts.cxx:178 AliCFEventRecCuts.cxx:179 AliCFEventRecCuts.cxx:180 AliCFEventRecCuts.cxx:181 AliCFEventRecCuts.cxx:182 AliCFEventRecCuts.cxx:183 AliCFEventRecCuts.cxx:184 AliCFEventRecCuts.cxx:185 AliCFEventRecCuts.cxx:186 AliCFEventRecCuts.cxx:187 AliCFEventRecCuts.cxx:188 AliCFEventRecCuts.cxx:189 AliCFEventRecCuts.cxx:190 AliCFEventRecCuts.cxx:191 AliCFEventRecCuts.cxx:192 AliCFEventRecCuts.cxx:193 AliCFEventRecCuts.cxx:194 AliCFEventRecCuts.cxx:195 AliCFEventRecCuts.cxx:196 AliCFEventRecCuts.cxx:197 AliCFEventRecCuts.cxx:198 AliCFEventRecCuts.cxx:199 AliCFEventRecCuts.cxx:200 AliCFEventRecCuts.cxx:201 AliCFEventRecCuts.cxx:202 AliCFEventRecCuts.cxx:203 AliCFEventRecCuts.cxx:204 AliCFEventRecCuts.cxx:205 AliCFEventRecCuts.cxx:206 AliCFEventRecCuts.cxx:207 AliCFEventRecCuts.cxx:208 AliCFEventRecCuts.cxx:209 AliCFEventRecCuts.cxx:210 AliCFEventRecCuts.cxx:211 AliCFEventRecCuts.cxx:212 AliCFEventRecCuts.cxx:213 AliCFEventRecCuts.cxx:214 AliCFEventRecCuts.cxx:215 AliCFEventRecCuts.cxx:216 AliCFEventRecCuts.cxx:217 AliCFEventRecCuts.cxx:218 AliCFEventRecCuts.cxx:219 AliCFEventRecCuts.cxx:220 AliCFEventRecCuts.cxx:221 AliCFEventRecCuts.cxx:222 AliCFEventRecCuts.cxx:223 AliCFEventRecCuts.cxx:224 AliCFEventRecCuts.cxx:225 AliCFEventRecCuts.cxx:226 AliCFEventRecCuts.cxx:227 AliCFEventRecCuts.cxx:228 AliCFEventRecCuts.cxx:229 AliCFEventRecCuts.cxx:230 AliCFEventRecCuts.cxx:231 AliCFEventRecCuts.cxx:232 AliCFEventRecCuts.cxx:233 AliCFEventRecCuts.cxx:234 AliCFEventRecCuts.cxx:235 AliCFEventRecCuts.cxx:236 AliCFEventRecCuts.cxx:237 AliCFEventRecCuts.cxx:238 AliCFEventRecCuts.cxx:239 AliCFEventRecCuts.cxx:240 AliCFEventRecCuts.cxx:241 AliCFEventRecCuts.cxx:242 AliCFEventRecCuts.cxx:243 AliCFEventRecCuts.cxx:244 AliCFEventRecCuts.cxx:245 AliCFEventRecCuts.cxx:246 AliCFEventRecCuts.cxx:247 AliCFEventRecCuts.cxx:248 AliCFEventRecCuts.cxx:249 AliCFEventRecCuts.cxx:250 AliCFEventRecCuts.cxx:251 AliCFEventRecCuts.cxx:252 AliCFEventRecCuts.cxx:253 AliCFEventRecCuts.cxx:254 AliCFEventRecCuts.cxx:255 AliCFEventRecCuts.cxx:256 AliCFEventRecCuts.cxx:257 AliCFEventRecCuts.cxx:258 AliCFEventRecCuts.cxx:259 AliCFEventRecCuts.cxx:260 AliCFEventRecCuts.cxx:261 AliCFEventRecCuts.cxx:262 AliCFEventRecCuts.cxx:263 AliCFEventRecCuts.cxx:264 AliCFEventRecCuts.cxx:265 AliCFEventRecCuts.cxx:266 AliCFEventRecCuts.cxx:267 AliCFEventRecCuts.cxx:268 AliCFEventRecCuts.cxx:269 AliCFEventRecCuts.cxx:270 AliCFEventRecCuts.cxx:271 AliCFEventRecCuts.cxx:272 AliCFEventRecCuts.cxx:273 AliCFEventRecCuts.cxx:274 AliCFEventRecCuts.cxx:275 AliCFEventRecCuts.cxx:276 AliCFEventRecCuts.cxx:277 AliCFEventRecCuts.cxx:278 AliCFEventRecCuts.cxx:279 AliCFEventRecCuts.cxx:280 AliCFEventRecCuts.cxx:281 AliCFEventRecCuts.cxx:282 AliCFEventRecCuts.cxx:283 AliCFEventRecCuts.cxx:284 AliCFEventRecCuts.cxx:285 AliCFEventRecCuts.cxx:286 AliCFEventRecCuts.cxx:287 AliCFEventRecCuts.cxx:288 AliCFEventRecCuts.cxx:289 AliCFEventRecCuts.cxx:290 AliCFEventRecCuts.cxx:291 AliCFEventRecCuts.cxx:292 AliCFEventRecCuts.cxx:293 AliCFEventRecCuts.cxx:294 AliCFEventRecCuts.cxx:295 AliCFEventRecCuts.cxx:296 AliCFEventRecCuts.cxx:297 AliCFEventRecCuts.cxx:298 AliCFEventRecCuts.cxx:299 AliCFEventRecCuts.cxx:300 AliCFEventRecCuts.cxx:301 AliCFEventRecCuts.cxx:302 AliCFEventRecCuts.cxx:303 AliCFEventRecCuts.cxx:304 AliCFEventRecCuts.cxx:305 AliCFEventRecCuts.cxx:306 AliCFEventRecCuts.cxx:307 AliCFEventRecCuts.cxx:308 AliCFEventRecCuts.cxx:309 AliCFEventRecCuts.cxx:310 AliCFEventRecCuts.cxx:311 AliCFEventRecCuts.cxx:312 AliCFEventRecCuts.cxx:313 AliCFEventRecCuts.cxx:314 AliCFEventRecCuts.cxx:315 AliCFEventRecCuts.cxx:316 AliCFEventRecCuts.cxx:317 AliCFEventRecCuts.cxx:318 AliCFEventRecCuts.cxx:319 AliCFEventRecCuts.cxx:320 AliCFEventRecCuts.cxx:321 AliCFEventRecCuts.cxx:322 AliCFEventRecCuts.cxx:323 AliCFEventRecCuts.cxx:324 AliCFEventRecCuts.cxx:325 AliCFEventRecCuts.cxx:326 AliCFEventRecCuts.cxx:327 AliCFEventRecCuts.cxx:328 AliCFEventRecCuts.cxx:329 AliCFEventRecCuts.cxx:330 AliCFEventRecCuts.cxx:331 AliCFEventRecCuts.cxx:332 AliCFEventRecCuts.cxx:333 AliCFEventRecCuts.cxx:334 AliCFEventRecCuts.cxx:335 AliCFEventRecCuts.cxx:336 AliCFEventRecCuts.cxx:337 AliCFEventRecCuts.cxx:338 AliCFEventRecCuts.cxx:339 AliCFEventRecCuts.cxx:340 AliCFEventRecCuts.cxx:341 AliCFEventRecCuts.cxx:342 AliCFEventRecCuts.cxx:343 AliCFEventRecCuts.cxx:344 AliCFEventRecCuts.cxx:345 AliCFEventRecCuts.cxx:346 AliCFEventRecCuts.cxx:347 AliCFEventRecCuts.cxx:348 AliCFEventRecCuts.cxx:349 AliCFEventRecCuts.cxx:350 AliCFEventRecCuts.cxx:351 AliCFEventRecCuts.cxx:352 AliCFEventRecCuts.cxx:353 AliCFEventRecCuts.cxx:354 AliCFEventRecCuts.cxx:355 AliCFEventRecCuts.cxx:356 AliCFEventRecCuts.cxx:357 AliCFEventRecCuts.cxx:358 AliCFEventRecCuts.cxx:359 AliCFEventRecCuts.cxx:360 AliCFEventRecCuts.cxx:361 AliCFEventRecCuts.cxx:362 AliCFEventRecCuts.cxx:363 AliCFEventRecCuts.cxx:364 AliCFEventRecCuts.cxx:365 AliCFEventRecCuts.cxx:366 AliCFEventRecCuts.cxx:367 AliCFEventRecCuts.cxx:368 AliCFEventRecCuts.cxx:369 AliCFEventRecCuts.cxx:370 AliCFEventRecCuts.cxx:371 AliCFEventRecCuts.cxx:372 AliCFEventRecCuts.cxx:373 AliCFEventRecCuts.cxx:374 AliCFEventRecCuts.cxx:375 AliCFEventRecCuts.cxx:376 AliCFEventRecCuts.cxx:377 AliCFEventRecCuts.cxx:378 AliCFEventRecCuts.cxx:379 AliCFEventRecCuts.cxx:380 AliCFEventRecCuts.cxx:381 AliCFEventRecCuts.cxx:382 AliCFEventRecCuts.cxx:383 AliCFEventRecCuts.cxx:384 AliCFEventRecCuts.cxx:385 AliCFEventRecCuts.cxx:386 AliCFEventRecCuts.cxx:387 AliCFEventRecCuts.cxx:388 AliCFEventRecCuts.cxx:389 AliCFEventRecCuts.cxx:390 AliCFEventRecCuts.cxx:391 AliCFEventRecCuts.cxx:392 AliCFEventRecCuts.cxx:393 AliCFEventRecCuts.cxx:394 AliCFEventRecCuts.cxx:395 AliCFEventRecCuts.cxx:396 AliCFEventRecCuts.cxx:397 AliCFEventRecCuts.cxx:398 AliCFEventRecCuts.cxx:399 AliCFEventRecCuts.cxx:400 AliCFEventRecCuts.cxx:401 AliCFEventRecCuts.cxx:402 AliCFEventRecCuts.cxx:403 AliCFEventRecCuts.cxx:404 AliCFEventRecCuts.cxx:405 AliCFEventRecCuts.cxx:406 AliCFEventRecCuts.cxx:407 AliCFEventRecCuts.cxx:408