7 : theLinkBoardInputNum(
num), theChamber(
chamber), theFeb(feb), theAlgo(0), theRawId(0) {}
10 : theLinkBoardInputNum(iOther.theLinkBoardInputNum),
11 theChamber(iOther.theChamber),
12 theFeb(iOther.theFeb),
13 theAlgo(iOther.theAlgo),
14 theRawId(iOther.theRawId.
load()) {}
31 pinAlgo = pinAlgo - 4;
35 if (pinNumber < pinAlgo)
37 if (!pinAlgo && (pinNumber < 2))
39 if (pinAlgo && (pinNumber > pinAlgo +
nStrips - 1))
41 if (!pinAlgo && (pinNumber >
nStrips + 2 || pinNumber == 9))
43 int chamberStripNumber = -1;
46 chamberStripNumber = firstChamberStrip +
slope * (pinNumber - pinAlgo);
47 else if (pinNumber < 9)
48 chamberStripNumber = firstChamberStrip +
slope * (pinNumber - 2);
50 chamberStripNumber = firstChamberStrip +
slope * (pinNumber - 3);
58 if (istrip < 0 || istrip >
nStrips - 1)
62 int theStrip = firstChamberStrip + istrip;
64 theStrip = firstChamberStrip - istrip;
70 if (istrip < 0 || istrip >
nStrips - 1)
74 pinAlgo = pinAlgo - 4;
75 bool holeatpin9 = (pinAlgo == 0 && istrip > 6);
76 int thePin = istrip + pinAlgo + holeatpin9 + 2 * (pinAlgo == 0);
83 uint32_t expected = 0;
90 std::ostringstream
str;
93 str << aDet << std::endl;
98 for (
int istrip = 0; istrip <
nStrips; istrip++) {
uint32_t rawId() const
DetUnit to which data belongs.
static const double slope[3]
std::atomic< uint32_t > theRawId
std::string print(int depth=0) const
debug printout
FebConnectorSpec & operator=(FebConnectorSpec const &)
std::string print(int depth=0) const
nStrips
1.2 is to make the matching window safely the two nearest strips 0.35 is the size of an ME0 chamber i...
int linkBoardInputNum() const
this FEB channel in LinkBoard
const int cmsStripNum(int istrip) const
const ChamberStripSpec strip(int pinNumber) const
strip info for input pin
FebConnectorSpec(int num=-1)
ChamberLocationSpec theChamber
std::string print(int depth=0) const
debug
std::string print(int depth=0) const
debug printout
const int chamberStripNum(int istrip) const
const int cablePinNum(int istrip) const