}
new ((*fTrackletArray)[fTrackletArray->GetEntriesFast()]) AliTRDtrackletMCM((UInt_t) fMCMT[cpu], fDetector*2 + fRobPos%2, fRobPos, fMcmPos);
((AliTRDtrackletMCM*) (*fTrackletArray)[fTrackletArray->GetEntriesFast()-1])->SetLabel(mcLabel);
+ ((AliTRDtrackletMCM*) (*fTrackletArray)[fTrackletArray->GetEntriesFast()-1])->SetQ0(q0);
+ ((AliTRDtrackletMCM*) (*fTrackletArray)[fTrackletArray->GetEntriesFast()-1])->SetQ1(q1);
}
}
}
fTrackletWord(trackletWord),
fMCM(-1),
fROB(-1),
+ fQ0(0),
+ fQ1(0),
fLabel(-1)
{
fGeo = new AliTRDgeometry();
fTrackletWord(trackletWord),
fMCM(-1),
fROB(-1),
+ fQ0(0),
+ fQ1(0),
fLabel(-1)
{
fGeo = new AliTRDgeometry();
fTrackletWord(trackletWord),
fMCM(mcm),
fROB(rob),
+ fQ0(0),
+ fQ1(0),
fLabel(-1)
{
fGeo = new AliTRDgeometry();
fTrackletWord(rhs.fTrackletWord),
fMCM(rhs.fMCM),
fROB(rhs.fROB),
+ fQ0(rhs.fQ0),
+ fQ1(rhs.fQ1),
fLabel(rhs.fLabel)
{
fGeo = new AliTRDgeometry();
Float_t GetY() const { return (GetYbin() * 160e-4); }
Float_t GetZ() const { return fGeo->GetPadPlane((fHCId % 12) / 2, (fHCId / 12) % 5)->GetRowPos( 4 * (fROB / 2) + fMCM / 4); }
+ Int_t GetQ0() const { return fQ0; }
+ Int_t GetQ1() const { return fQ1; }
+
UInt_t GetTrackletWord() const { return fTrackletWord; }
void SetTrackletWord(UInt_t trackletWord) { fTrackletWord = trackletWord; }
void SetMCM(Int_t mcm) { fMCM = mcm; }
void SetROB(Int_t rob) { fROB = rob; }
void SetLabel(Int_t label) { fLabel = label; }
+ void SetQ0(Int_t charge) { fQ0 = charge; }
+ void SetQ1(Int_t charge) { fQ1 = charge; }
protected:
AliTRDgeometry *fGeo; //! TRD geometry
Int_t fMCM; // MCM no. in which the tracklet was found
Int_t fROB; // ROB no. on which the tracklet was found
+ Int_t fQ0; // accumulated charge in the first time window
+ Int_t fQ1; // accumulated charge in the second time window
+
Int_t fLabel; // label for MC track
private:
AliTRDtrackletMCM& operator=(const AliTRDtrackletMCM &rhs); // not implemented
- ClassDef(AliTRDtrackletMCM, 1);
+ ClassDef(AliTRDtrackletMCM, 2);
};
#endif