Skip to content

Commit

Permalink
Adding the 64x21 BB and BG flags to V0 ESD and AOD. Need for offline …
Browse files Browse the repository at this point in the history
…PFP studies and event selections.
  • Loading branch information
cvetan authored and hristov committed Oct 20, 2015
1 parent bf8cfc0 commit 218a008
Show file tree
Hide file tree
Showing 6 changed files with 60 additions and 5 deletions.
17 changes: 17 additions & 0 deletions STEER/AOD/AliAODVZERO.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,7 @@ AliAODVZERO::AliAODVZERO()
fMultiplicity[j] = 0.0;
fBBFlag[j]= kFALSE;
fBGFlag[j]= kFALSE;
for(Int_t k = 0; k < 21; ++k) fIsBB[j][k] = fIsBG[j][k] = kFALSE;
}
}

Expand All @@ -67,6 +68,10 @@ AliAODVZERO::AliAODVZERO(const AliAODVZERO &source)
fMultiplicity[j] = source.fMultiplicity[j];
fBBFlag[j] = source.fBBFlag[j];
fBGFlag[j] = source.fBGFlag[j];
for(Int_t k = 0; k < 21; ++k) {
fIsBB[j][k] = source.fIsBB[j][k];
fIsBG[j][k] = source.fIsBG[j][k];
}
}
}

Expand All @@ -90,6 +95,10 @@ AliAODVZERO::AliAODVZERO(const AliVVZERO &source)
fMultiplicity[j] = source.GetMultiplicity(j);
fBBFlag[j] = source.GetBBFlag(j);
fBGFlag[j] = source.GetBGFlag(j);
for(Int_t k = 0; k < 21; ++k) {
fIsBB[j][k] = source.GetPFBBFlag(j,k);
fIsBG[j][k] = source.GetPFBGFlag(j,k);
}
}

for(Int_t j=0; j<32; j++) {
Expand Down Expand Up @@ -125,6 +134,10 @@ AliAODVZERO& AliAODVZERO::operator=(const AliAODVZERO& source)
fMultiplicity[j] = source.fMultiplicity[j];
fBBFlag[j] = source.fBBFlag[j];
fBGFlag[j] = source.fBGFlag[j];
for(Int_t k = 0; k < 21; ++k) {
fIsBB[j][k] = source.fIsBB[j][k];
fIsBG[j][k] = source.fIsBG[j][k];
}
}
return *this;
}
Expand All @@ -149,6 +162,10 @@ AliAODVZERO& AliAODVZERO::operator=(const AliVVZERO& source)
fMultiplicity[j] = source.GetMultiplicity(j);
fBBFlag[j] = source.GetBBFlag(j);
fBGFlag[j] = source.GetBGFlag(j);
for(Int_t k = 0; k < 21; ++k) {
fIsBB[j][k] = source.GetPFBBFlag(j,k);
fIsBG[j][k] = source.GetPFBGFlag(j,k);
}
}

fBBtriggerV0A = fBGtriggerV0A = fBBtriggerV0C = fBGtriggerV0C = 0;
Expand Down
8 changes: 7 additions & 1 deletion STEER/AOD/AliAODVZERO.h
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,9 @@ class AliAODVZERO : public AliVVZERO
virtual UShort_t GetTriggerChargeA() const { return fTriggerChargeA; }
virtual UShort_t GetTriggerChargeC() const { return fTriggerChargeC; }
virtual UShort_t GetTriggerBits() const { return fTriggerBits; }

virtual Bool_t GetPFBBFlag(Int_t channel, Int_t clock) const { return fIsBB[channel][clock]; }
virtual Bool_t GetPFBGFlag(Int_t channel, Int_t clock) const { return fIsBG[channel][clock]; }

protected:

Expand All @@ -74,7 +77,10 @@ class AliAODVZERO : public AliVVZERO
UShort_t fTriggerChargeC; // Sum of the trigger (clock=10) charge on C side
UShort_t fTriggerBits; // V0 trigger bits as defined in the firmware

ClassDef(AliAODVZERO,2)
Bool_t fIsBB[64][21]; // 'Beam-Beam' flag for all channels and 21 clocks
Bool_t fIsBG[64][21]; // 'Beam-Gas' flag for all channels and 21 clocks

ClassDef(AliAODVZERO,3)
};

#endif
12 changes: 11 additions & 1 deletion STEER/ESD/AliESDVZERO.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,8 @@ AliESDVZERO::AliESDVZERO()
fTime[j] = 0.0;
fWidth[j] = 0.0;
fBBFlag[j]= kFALSE;
fBGFlag[j]= kFALSE;
fBGFlag[j]= kFALSE;
for(Int_t k = 0; k < 21; ++k) fIsBB[j][k] = fIsBG[j][k] = kFALSE;
}
}

Expand Down Expand Up @@ -76,6 +77,10 @@ AliESDVZERO::AliESDVZERO(const AliESDVZERO &o)
fWidth[j] = o.fWidth[j];
fBBFlag[j] = o.fBBFlag[j];
fBGFlag[j] = o.fBGFlag[j];
for(Int_t k = 0; k < 21; ++k) {
fIsBB[j][k] = o.fIsBB[j][k];
fIsBG[j][k] = o.fIsBG[j][k];
}
}
}

Expand Down Expand Up @@ -107,6 +112,7 @@ AliESDVZERO::AliESDVZERO(UInt_t BBtriggerV0A, UInt_t BGtriggerV0A,
fWidth[j] = Width[j];
fBBFlag[j] = BBFlag[j];
fBGFlag[j] = BGFlag[j];
for(Int_t k = 0; k < 21; ++k) fIsBB[j][k] = fIsBG[j][k] = kFALSE;
}
}

Expand Down Expand Up @@ -139,6 +145,10 @@ AliESDVZERO& AliESDVZERO::operator=(const AliESDVZERO& o)
fWidth[j] = o.fWidth[j];
fBBFlag[j] = o.fBBFlag[j];
fBGFlag[j] = o.fBGFlag[j];
for(Int_t k = 0; k < 21; ++k) {
fIsBB[j][k] = o.fIsBB[j][k];
fIsBG[j][k] = o.fIsBG[j][k];
}
}
return *this;
}
Expand Down
11 changes: 10 additions & 1 deletion STEER/ESD/AliESDVZERO.h
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,9 @@ class AliESDVZERO : public AliVVZERO
void SetTriggerChargeC(UShort_t chargeC) {fTriggerChargeC = chargeC;}
void SetTriggerBits(UShort_t triggerBits) {fTriggerBits = triggerBits;}

void SetPFBBFlag(Int_t channel, Int_t clock, Bool_t flag) { fIsBB[channel][clock] = flag; }
void SetPFBGFlag(Int_t channel, Int_t clock, Bool_t flag) { fIsBG[channel][clock] = flag; }

// Getters
virtual Short_t GetNbPMV0A() const;
virtual Short_t GetNbPMV0C() const;
Expand Down Expand Up @@ -95,6 +98,9 @@ class AliESDVZERO : public AliVVZERO
virtual UInt_t GetBBTriggerV0C() const { return fBBtriggerV0C; }
virtual UInt_t GetBGTriggerV0C() const { return fBGtriggerV0C; }

virtual Bool_t GetPFBBFlag(Int_t channel, Int_t clock) const { return fIsBB[channel][clock]; }
virtual Bool_t GetPFBGFlag(Int_t channel, Int_t clock) const { return fIsBG[channel][clock]; }

AliESDVZERO &operator=(const AliESDVZERO& source);

protected:
Expand Down Expand Up @@ -123,7 +129,10 @@ class AliESDVZERO : public AliVVZERO
UShort_t fTriggerChargeC; // Sum of the trigger (clock=10) charge on C side
UShort_t fTriggerBits; // V0 trigger bits as defined in the firmware

ClassDef(AliESDVZERO,10)
Bool_t fIsBB[64][21]; // 'Beam-Beam' flag for all channels and 21 clocks
Bool_t fIsBG[64][21]; // 'Beam-Gas' flag for all channels and 21 clocks

ClassDef(AliESDVZERO,11)
};

#endif
8 changes: 6 additions & 2 deletions STEER/STEERBase/AliVVZERO.h
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,8 @@ class AliVVZERO : public TObject
kOnlineBitsFilled = BIT(17),
kCorrectedForSaturation = BIT(18),
kRobustMeanTime = BIT(19),
kTriggerChargeBitsFilled = BIT(20)
kTriggerChargeBitsFilled = BIT(20),
kPastFutureFlagsFilled = BIT(21)
};
enum Decision { kV0Invalid = -1, kV0Empty = 0, kV0BB, kV0BG, kV0Fake };
enum TriggerBits {
Expand Down Expand Up @@ -76,6 +77,9 @@ class AliVVZERO : public TObject
virtual UShort_t GetTriggerChargeC() const = 0;
virtual UShort_t GetTriggerBits() const = 0;

virtual Bool_t GetPFBBFlag(Int_t channel, Int_t clock) const = 0;
virtual Bool_t GetPFBGFlag(Int_t channel, Int_t clock) const = 0;

static Float_t GetVZEROAvgPhi(Int_t channel)
{ return TMath::Pi() / 8 + TMath::Pi() / 4 * (channel%8); }
static Float_t GetVZEROEtaMin(Int_t channel);
Expand All @@ -85,7 +89,7 @@ class AliVVZERO : public TObject

Bool_t OutOfRange(Int_t i, const char *s, Int_t upper) const;

ClassDef(AliVVZERO,2)
ClassDef(AliVVZERO,3)
};

#endif
9 changes: 9 additions & 0 deletions VZERO/VZEROrec/AliVZEROReconstructor.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -453,6 +453,15 @@ void AliVZEROReconstructor::FillESD(TTree* digitsTree, TTree* /*clustersTree*/,
triggerMask.FillMasks(fESDVZERO, fCalibData, fTimeSlewing);
}

// Fill BB and BG flags for all channel in 21 clocks (called past-future flags)
for(Int_t i = 0; i < 64; ++i) {
for (Int_t iEv = 0; iEv < AliESDVZEROfriend::kNEvOfInt; iEv++) {
fESDVZERO->SetPFBBFlag(i,iEv,fESDVZEROfriend->GetBBFlag(i,iEv));
fESDVZERO->SetPFBGFlag(i,iEv,fESDVZEROfriend->GetBGFlag(i,iEv));
}
}
fESDVZERO->SetBit(AliESDVZERO::kPastFutureFlagsFilled,kTRUE);

if (esd) {
AliDebug(1, Form("Writing VZERO data to ESD tree"));
esd->SetVZEROData(fESDVZERO);
Expand Down

0 comments on commit 218a008

Please sign in to comment.