#include "AliTRDtrackletMCM.h"
#include "AliLog.h"
ClassImp(AliTRDtrackletMCM)
AliTRDtrackletMCM::AliTRDtrackletMCM(UInt_t trackletWord) :
AliTRDtrackletBase(),
fGeo(0x0),
fHCId(-1),
fTrackletWord(trackletWord),
fMCM(-1),
fROB(-1),
fQ0(0),
fQ1(0),
fNHits(0),
fNHits0(0),
fNHits1(0),
fSlope(0.),
fOffset(0.),
fError(0.),
fNClusters(0),
fResiduals(0x0),
fClsCharges(0x0)
{
fGeo = new AliTRDgeometry();
fLabel[0] = -1;
fLabel[1] = -1;
fLabel[2] = -1;
}
AliTRDtrackletMCM::AliTRDtrackletMCM(UInt_t trackletWord, Int_t hcid) :
AliTRDtrackletBase(),
fGeo(0x0),
fHCId(hcid),
fTrackletWord(trackletWord),
fMCM(-1),
fROB(-1),
fQ0(0),
fQ1(0),
fNHits(0),
fNHits0(0),
fNHits1(0),
fSlope(0.),
fOffset(0.),
fError(0.),
fNClusters(0),
fResiduals(0x0),
fClsCharges(0x0)
{
fGeo = new AliTRDgeometry();
fLabel[0] = -1;
fLabel[1] = -1;
fLabel[2] = -1;
}
AliTRDtrackletMCM::AliTRDtrackletMCM(UInt_t trackletWord, Int_t hcid, Int_t rob, Int_t mcm) :
AliTRDtrackletBase(),
fGeo(0x0),
fHCId(hcid),
fTrackletWord(trackletWord),
fMCM(mcm),
fROB(rob),
fQ0(0),
fQ1(0),
fNHits(0),
fNHits0(0),
fNHits1(0),
fSlope(0.),
fOffset(0.),
fError(0.),
fNClusters(0),
fResiduals(0x0),
fClsCharges(0x0)
{
fGeo = new AliTRDgeometry();
fLabel[0] = -1;
fLabel[1] = -1;
fLabel[2] = -1;
}
AliTRDtrackletMCM::AliTRDtrackletMCM(const AliTRDtrackletMCM &rhs) :
AliTRDtrackletBase(rhs),
fGeo(0x0),
fHCId(rhs.fHCId),
fTrackletWord(rhs.fTrackletWord),
fMCM(rhs.fMCM),
fROB(rhs.fROB),
fQ0(rhs.fQ0),
fQ1(rhs.fQ1),
fNHits(rhs.fNHits),
fNHits0(rhs.fNHits0),
fNHits1(rhs.fNHits1),
fSlope(rhs.fSlope),
fOffset(rhs.fOffset),
fError(rhs.fError),
fNClusters(rhs.fNClusters),
fResiduals(0x0),
fClsCharges(0x0)
{
fGeo = new AliTRDgeometry();
fResiduals = new Float_t[fNClusters];
fClsCharges = new Float_t[fNClusters];
for (Int_t iCls = 0; iCls < fNClusters; iCls++) {
fResiduals[iCls] = rhs.fResiduals[iCls];
fClsCharges[iCls] = rhs.fClsCharges[iCls];
}
fLabel[0] = rhs.fLabel[0];
fLabel[1] = rhs.fLabel[1];
fLabel[2] = rhs.fLabel[2];
}
AliTRDtrackletMCM::~AliTRDtrackletMCM()
{
delete [] fResiduals;
delete [] fClsCharges;
delete fGeo;
}
Int_t AliTRDtrackletMCM::GetYbin() const {
if (fTrackletWord & 0x1000) {
return -((~(fTrackletWord-1)) & 0x1fff);
}
else {
return (fTrackletWord & 0x1fff);
}
}
Int_t AliTRDtrackletMCM::GetdY() const
{
if (fTrackletWord & (1 << 19)) {
return -((~((fTrackletWord >> 13) - 1)) & 0x7f);
}
else {
return ((fTrackletWord >> 13) & 0x7f);
}
}
void AliTRDtrackletMCM::SetLabel(Int_t label[])
{
fLabel[0] = label[0];
fLabel[1] = label[1];
fLabel[2] = label[2];
}
void AliTRDtrackletMCM::SetClusters(Float_t *res, Float_t *q, Int_t n)
{
fNClusters = n;
delete [] fResiduals;
delete [] fClsCharges;
fResiduals = new Float_t[fNClusters];
fClsCharges = new Float_t[fNClusters];
for (Int_t iCls = 0; iCls < fNClusters; iCls++) {
fResiduals[iCls] = res[iCls];
fClsCharges[iCls] = q[iCls];
}
}
AliTRDtrackletMCM.cxx:100 AliTRDtrackletMCM.cxx:101 AliTRDtrackletMCM.cxx:102 AliTRDtrackletMCM.cxx:103 AliTRDtrackletMCM.cxx:104 AliTRDtrackletMCM.cxx:105 AliTRDtrackletMCM.cxx:106 AliTRDtrackletMCM.cxx:107 AliTRDtrackletMCM.cxx:108 AliTRDtrackletMCM.cxx:109 AliTRDtrackletMCM.cxx:110 AliTRDtrackletMCM.cxx:111 AliTRDtrackletMCM.cxx:112 AliTRDtrackletMCM.cxx:113 AliTRDtrackletMCM.cxx:114 AliTRDtrackletMCM.cxx:115 AliTRDtrackletMCM.cxx:116 AliTRDtrackletMCM.cxx:117 AliTRDtrackletMCM.cxx:118 AliTRDtrackletMCM.cxx:119 AliTRDtrackletMCM.cxx:120 AliTRDtrackletMCM.cxx:121 AliTRDtrackletMCM.cxx:122 AliTRDtrackletMCM.cxx:123 AliTRDtrackletMCM.cxx:124 AliTRDtrackletMCM.cxx:125 AliTRDtrackletMCM.cxx:126 AliTRDtrackletMCM.cxx:127 AliTRDtrackletMCM.cxx:128 AliTRDtrackletMCM.cxx:129 AliTRDtrackletMCM.cxx:130 AliTRDtrackletMCM.cxx:131 AliTRDtrackletMCM.cxx:132 AliTRDtrackletMCM.cxx:133 AliTRDtrackletMCM.cxx:134 AliTRDtrackletMCM.cxx:135 AliTRDtrackletMCM.cxx:136 AliTRDtrackletMCM.cxx:137 AliTRDtrackletMCM.cxx:138 AliTRDtrackletMCM.cxx:139 AliTRDtrackletMCM.cxx:140 AliTRDtrackletMCM.cxx:141 AliTRDtrackletMCM.cxx:142 AliTRDtrackletMCM.cxx:143 AliTRDtrackletMCM.cxx:144 AliTRDtrackletMCM.cxx:145 AliTRDtrackletMCM.cxx:146 AliTRDtrackletMCM.cxx:147 AliTRDtrackletMCM.cxx:148 AliTRDtrackletMCM.cxx:149 AliTRDtrackletMCM.cxx:150 AliTRDtrackletMCM.cxx:151 AliTRDtrackletMCM.cxx:152 AliTRDtrackletMCM.cxx:153 AliTRDtrackletMCM.cxx:154 AliTRDtrackletMCM.cxx:155 AliTRDtrackletMCM.cxx:156 AliTRDtrackletMCM.cxx:157 AliTRDtrackletMCM.cxx:158 AliTRDtrackletMCM.cxx:159 AliTRDtrackletMCM.cxx:160 AliTRDtrackletMCM.cxx:161 AliTRDtrackletMCM.cxx:162 AliTRDtrackletMCM.cxx:163 AliTRDtrackletMCM.cxx:164 AliTRDtrackletMCM.cxx:165 AliTRDtrackletMCM.cxx:166 AliTRDtrackletMCM.cxx:167 AliTRDtrackletMCM.cxx:168 AliTRDtrackletMCM.cxx:169 AliTRDtrackletMCM.cxx:170 AliTRDtrackletMCM.cxx:171 AliTRDtrackletMCM.cxx:172 AliTRDtrackletMCM.cxx:173 AliTRDtrackletMCM.cxx:174 AliTRDtrackletMCM.cxx:175 AliTRDtrackletMCM.cxx:176 AliTRDtrackletMCM.cxx:177 AliTRDtrackletMCM.cxx:178 AliTRDtrackletMCM.cxx:179 AliTRDtrackletMCM.cxx:180 AliTRDtrackletMCM.cxx:181 AliTRDtrackletMCM.cxx:182 AliTRDtrackletMCM.cxx:183 AliTRDtrackletMCM.cxx:184 AliTRDtrackletMCM.cxx:185 AliTRDtrackletMCM.cxx:186 AliTRDtrackletMCM.cxx:187 AliTRDtrackletMCM.cxx:188 AliTRDtrackletMCM.cxx:189 AliTRDtrackletMCM.cxx:190 AliTRDtrackletMCM.cxx:191 AliTRDtrackletMCM.cxx:192 AliTRDtrackletMCM.cxx:193 AliTRDtrackletMCM.cxx:194 AliTRDtrackletMCM.cxx:195 AliTRDtrackletMCM.cxx:196 AliTRDtrackletMCM.cxx:197