CMS 3D CMS Logo

LinkConnSpec.cc
Go to the documentation of this file.
2 #include <sstream>
3 
5  std::ostringstream str;
6  str << "LinkConnSpec number=" << theTriggerBoardInputNumber << std::endl;
7  depth--;
8  if (depth >= 0) {
9  typedef std::vector<LinkBoardSpec>::const_iterator ILB;
10  for (ILB it = theLBs.begin(); it != theLBs.end(); it++)
11  str << (*it).print(depth);
12  }
13  return str.str();
14 }
15 
16 void LinkConnSpec::add(const LinkBoardSpec& lb) { theLBs.push_back(lb); }
17 
18 const LinkBoardSpec* LinkConnSpec::linkBoard(int linkBoardNumInLink) const {
19  //FIXME - temporary implementaion, to be replace by LUT (in preparation)
20  typedef std::vector<LinkBoardSpec>::const_iterator IT;
21  for (IT it = theLBs.begin(); it != theLBs.end(); it++) {
22  if (linkBoardNumInLink == it->linkBoardNumInLink())
23  return &(*it);
24  }
25  return nullptr;
26 }
const LinkBoardSpec * linkBoard(int linkBoardNumInLink) const
LB served by this link, identified by its position in link.
Definition: LinkConnSpec.cc:18
void add(const LinkBoardSpec &lb)
attach LinkBoard to this link
Definition: LinkConnSpec.cc:16
int theTriggerBoardInputNumber
Definition: LinkConnSpec.h:34
std::string print(int depth=0) const
debud printaout, call its components with depth dectreased by one
Definition: LinkConnSpec.cc:4
std::vector< LinkConnSpec >::const_iterator IT
#define str(s)
std::vector< LinkBoardSpec > theLBs
Definition: LinkConnSpec.h:35