12 #include <boost/cstdint.hpp>
71 int month=atoi(
theVersion.substr(3,2).c_str());
72 if (year < 2012 || (year==2012 && month<11)) diskOffset=3;
77 for (
unsigned int idcc=0; idcc<
theDccs.size(); idcc++) {
79 for (
int itb=lastTB; itb<lastTB+
theDccs[idcc].nTBs; itb++) {
81 for (
int ilink=lastLink; ilink<lastLink+
theTBs[itb].nLinks; ilink++) {
83 for (
int ilb=lastLB; ilb<lastLB+
theLinks[ilink].nLBs; ilb++) {
85 for (
int ifeb=lastFeb; ifeb<lastFeb+
theLBs[ilb].nFebs; ifeb++) {
86 int sector=(
theFebs[ifeb].theChamber)%100;
87 char subsector=((
theFebs[ifeb].theChamber)/100)%10-2;
88 char febZRadOrnt=((
theFebs[ifeb].theChamber)/1000)%5;
89 char febZOrnt=((
theFebs[ifeb].theChamber)/5000)%2;
90 char diskOrWheel=((
theFebs[ifeb].theChamber)/10000)%10-diskOffset;
91 char layer=((
theFebs[ifeb].theChamber)/100000)%10;
92 char barrelOrEndcap=(
theFebs[ifeb].theChamber)/1000000;
93 ChamberLocationSpec chamber={diskOrWheel,layer,sector,subsector,febZOrnt,febZRadOrnt,barrelOrEndcap};
94 char cmsEtaPartition=(
theFebs[ifeb].thePartition)/1000;
95 char positionInCmsEtaPartition=((
theFebs[ifeb].thePartition)%1000)/100;
96 char localEtaPartition=((
theFebs[ifeb].thePartition)%100)/10;
97 char positionInLocalEtaPartition=(
theFebs[ifeb].thePartition)%10;
98 FebLocationSpec afeb={cmsEtaPartition,positionInCmsEtaPartition,localEtaPartition,positionInLocalEtaPartition};
101 lb.
add(febConnector);
105 lastFeb+=
theLBs[ilb].nFebs;
111 lastLink+=
theTBs[itb].nLinks;
int theTriggerBoardInputNumber
void add(const FebConnectorSpec &feb)
attach feb
std::vector< tbItem > theTBs
void addStrips(int algo)
add strip info
void add(const LinkBoardSpec &lb)
attach LinkBoard to this link
void add(const LinkConnSpec &lc)
attach connection to TB
int theLinkBoardNumInLink
std::vector< dccItem > theDccs
std::vector< febItem > theFebs
void add(const DccSpec &dcc)
attach FED to map
void add(const TriggerBoardSpec &tb)
attach TB to DCC. The channel is defined by TB
std::vector< linkItem > theLinks
std::vector< lbItem > theLBs
RPCEMap(const std::string &version="")
RPCReadOutMapping const * convert() const