|
ATLAS Offline Software
|
Go to the documentation of this file.
105 out->setNumberOfData(nData/2);
108 for(
i=0;
i<
out->getNumberOfData();
i+=1)
131 std::cout <<
"#--Strip decodeSlaveBoardOut()" << std::endl;
132 std::cout <<
"Triplet" << std::endl;
138 std::cout <<
"index:" << j <<
"/" <<
NDecoderInSTSB-1 <<
" in a chip ";
139 std::cout<<
"SHPB:decoderInTSB["<<chip<<
"]["<<j<<
"]:";
152 std::cout<<
"decodeSlaveBoardOut ch= "<<
ch<<std::endl;
163 std::cout<<
"decodeSlaveBoardOut ch= "<<
ch<<std::endl;
173 std::cout<<
"decodeSlaveBoardOut ch= "<<
ch<<std::endl;
183 std::cout <<
"Doublet" << std::endl;
188 std::cout <<
"index:" << j <<
"/" <<
NDecoderInDSB-1 <<
" in a chip ";
189 std::cout<<
"SHPB:decoderInDSB["<<chip<<
"]["<<j<<
"]:";
207 int maxTSBCh=(block+1)*nChUnitOfDSBHit;
208 int minTSBCh=block*nChUnitOfDSBHit;
210 std::cout <<
"# Strip doCoincidenceMatrix() chip:" << chip <<
" block:" << block << std::endl;
212 for(
int dev=0; dev<=
m_maxDev; dev+=1) {
219 for (
int isgn=1; isgn >-2; isgn-=2) {
220 if ( (dev==0) && (isgn==-1) )
continue;
221 for(
int i=0;
i<nChUnitOfDSBHit;
i+=1) {
230 for(
int ior = 0; ior <= Oring; ior++) {
231 DSBCh = nChUnitOfDSBHit*block +
i;
233 if ( ((isgn>0) && ( (block%2==0)||((block%2==1)&&(TSBCh<maxTSBCh)) ) ) ||
234 ((isgn<0) && ( (block%2==1)||((block%2==0)&&(TSBCh>=minTSBCh)) ) ) ){
237 std::cout<<
"HighPt" << std::endl
240 <<
" DSBCh:" << DSBCh
241 <<
" TSBCh:" << TSBCh << std::endl;
262 int highPt1stBlock, highPt2ndBlock;
263 int lowPt1stBlock, lowPt2ndBlock;
273 highPt1stBlock = iblock;
276 highPt2ndBlock = iblock;
290 lowPt1stBlock = iblock;
293 lowPt2ndBlock = iblock;
300 if (highPt1stBlock < 0){
301 if (lowPt1stBlock >= 0){
311 if (lowPt2ndBlock >= 0){
322 }
else if (highPt2ndBlock < 0){
326 if ((dev>-8) && (dev<8)) {
334 if ((lowPt1stBlock >= 0) &&
346 }
else if ((lowPt2ndBlock >= 0) &&
364 if ((dev>-8) && (dev<8)) {
374 if ((dev>-8) && (dev<8)) {
386 if (dev >=12)
return 8;
387 else if (dev >=10)
return 7;
388 else if (dev >=8)
return 6;
389 else if (dev >=6)
return 5;
390 else if (dev >=4)
return 4;
void setHitID(int chip, int iCandidate, int hitIdIn)
void setDev(int chip, int iData, int devIn)
virtual void decodeSlaveBoardOut(int chip, TGCHitPattern *tHit, TGCHitPattern *dHit)
void setPos(int chip, int iCandidate, int posIn)
int getDev(int iData) const
TGCSlaveBoardOut * m_DSBOut[NumberOfChip][s_NumberOfDSBOut]
int getDev(int chip, int iData) const
TGCSlaveBoardOut * m_decoderInTSB[NumberOfChip][NDecoderInTSB]
TGCHighPtChipOut * m_highPtChipOut
int getNumberOfData() const
int getPos(int iData) const
void onChannel(int iChannel)
void setPos(int chip, int iData, int posIn)
virtual void clearDecoderIn()
TGCSlaveBoardOut * m_decoderInDSB[NumberOfChip][NDecoderInDSB]
int getSel(int chip, int iData) const
TGCSlaveBoardOut * divideTSBOut(int iSet, TGCSlaveBoardOut *SBOut)
bool getChannel(int iChannel) const
void setDev(int chip, int iCandidate, int devIn)
void setPt(int chip, int iCandidate, int ptIn)
bool getHit(int iData) const
virtual void setDecoderIn()
int getPos(int chip, int iData) const
virtual void doCoincidenceMatrix(int chip, int block, const TGCHitPattern *tHit, const TGCHitPattern *dHit)
const TGCSlaveBoard * getOrigin() const
TGCHighPtBoardOut * m_lowPtBoardOut
const int NBlockOfDSBChannel
void setPt(int chip, int iData, int ptIn)
TGCSlaveBoardOut * m_TSBOut[NumberOfChip][s_NumberOfTSBOut]
void setSel(int chip, int iCandidate, int selIn)
virtual void highLowSelector(int chip)
TGCHighPtBoardOut * m_highPtBoardOut
int getNonLinearDelta(int dev) const
void setHit(int chip, int iData, bool hitIn)