55 ERROR_msg( 1,
"Invalid cut parameter set!" );
65 cout <<
"==> Cluster from Segment Filler - Cut Parameter:" <<
"\n"
67 <<
"==> min_beta = " <<
fMinBeta <<
"\n"
68 <<
"==> max_beta = " <<
fMaxBeta <<
"\n"
129 if(spInd<0)
continue;
134 if(system<0)
continue;
137 Float_t beta = pSplineTrack->
getBeta();
138 Float_t mom = pSplineTrack->
getP();
143 if (fPolarity < 0 && pol >= 0)
continue;
145 if (beta<fMinBeta || beta>
fMaxBeta)
continue;
164 for(Int_t l=0;l<12;l++)
if(pSeg->
getNCells(l)>0) nLay[l/6]++;
165 if(nLay[0]<5 && nLay[1]<5)
return;
167 for(Int_t m=0;m<2;m++) {
168 if(nLay[m]<5)
continue;
170 if(hitInd<0) {nLay[m]=0;
continue;}
172 if(pHit==0) {nLay[m]=0;
continue;}
174 if(clusInfIndex<0) {nLay[m]=0;
continue;}
176 if(pClusInf==0) {nLay[m]=0;
continue;}
178 if(levelClFinding>5) nLay[m]=0;
180 if(nLay[0]<5 && nLay[1]<5)
return;
184 Int_t l1=(nLay[0]>=5) ? 0:6;
185 Int_t l2=(nLay[1]>=5) ? 12:6;
186 pClus->
setMinCl(l1==0 ? 5:0, l2==12 ? 5:0);
187 if(l1!=0 || l2!=12) {
190 pClus->
setMod((l1==0) ? mod:mod+1);
192 for(Int_t layer=l1;layer<l2;layer++) {
194 if(nCells==0)
continue;
195 for(Int_t
n=0;
n<nCells;
n++) {
198 pClus->
setTime(layer,cell,nCTimes);
206 Int_t sector = pSeg->
getSec();
208 if(&fSCSec==0)
return 0;
212 if(pSCMod1==0 && pSCMod2==0)
return 0;
213 if(pSCMod2==0) pSCMod2=pSCMod1;
214 else if(pSCMod1==0) pSCMod1=pSCMod2;
219 Warning(
"getClusterSlot",
"Sec.%i Segment %i No slot HMdcClus available",
Bool_t initContainer(void)
void setXY(Float_t xl, Float_t errx, Float_t yl, Float_t erry)
HMdcSizesCells * pSizesCells
Int_t getIOSeg(void) const
void setTarget(Float_t xl, Float_t ex, Float_t yl, Float_t ey, Float_t zl, Float_t ez)
static HMdcGetContainers * getObject()
void setTypeClFinder(Int_t type)
Float_t getChi2(void) const
Int_t getSeg1Ind(void) const
HCategory * pCatSplineTrack
virtual Int_t execute(void)
Char_t getLevelClFinding(void)
HIterator * iterMetaMatch
Char_t getPolarity(void) const
HEvent *& getCurrentEvent(void)
Float_t getTheta(void) const
Int_t setTime(Int_t lay, Int_t cell, UChar_t time)
static HMdcSizesCells * getObject(void)
virtual Bool_t init(void)
Int_t getHitInd(Int_t i) const
void setClusIndex(Int_t ind)
Float_t getBeta(void) const
virtual Bool_t reinit(void)
void setSecondPlane(HMdcPlane *sp)
Float_t getPhi(void) const
#define ERROR_msg(det, text)
void setSegIndex(Int_t si)
void setMinCl(Int_t m1or3, Int_t m2or4)
void setFirstPlane(HMdcPlane *fp)
void setSecSegInd(Int_t sc, Int_t sg, Int_t ind)
Int_t getCell(Int_t layer, Int_t idx)
Int_t getSeg2Ind(void) const
Short_t getOwnIndex(void) const
void setSegmentLine(Double_t r, Double_t z, Double_t theta, Double_t phi)
HCategory * pCatMetaMatch
void fillCluster(Short_t segInd)
ClassImp(HMdcClustFromSeg) HMdcClustFromSeg
void initCut(HParamList *cut)
HCategory * pCatMdcClusInf
Int_t getNCells(Int_t layer)
virtual HCategory * getCategory(Cat_t aCat)=0
void setOwnIndex(Int_t ind)
Short_t getClusInfIndex(void)
HCategory * getCatMdcClusInf(Bool_t create=kFALSE)
HCategory * getCatMdcTrkCand(Bool_t create=kFALSE)
Bool_t fill(const Text_t *, Text_t *, const Int_t)
void setPrPlane(Float_t a, Float_t b, Float_t d)
HMdcClus * getClusterSlot(HMdcSeg *pSeg)
HCategory * getCatMdcClus(Bool_t create=kFALSE)
HCategory * pCatMdcTrkCand
virtual Bool_t finalize(void)
const Cat_t catSplineTrack
Int_t getSignId(Int_t layer, Int_t idx)