CMS 3D CMS Logo

SiStripCcu.cc
Go to the documentation of this file.
1 
3 #include <iostream>
4 
5 // -----------------------------------------------------------------------------
6 //
7 SiStripCcu::SiStripCcu(const FedChannelConnection &conn) : ccuAddr_(conn.ccuAddr()), modules_() {
8  modules_.reserve(32);
9  addDevices(conn);
10 }
11 
12 // -----------------------------------------------------------------------------
13 //
15  auto imod = modules_.begin();
16  while (imod != modules_.end() && (*imod).ccuChan() != conn.ccuChan()) {
17  imod++;
18  }
19  if (imod == modules_.end()) {
20  modules_.push_back(SiStripModule(conn));
21  } else {
22  imod->addDevices(conn);
23  }
24 }
Device and connection information at the level of a front-end module.
Definition: SiStripModule.h:24
static const char ccuAddr_[]
Class containning control, module, detector and connection information, at the level of a FED channel...
const uint16_t & ccuChan() const
void addDevices(const FedChannelConnection &conn)
Definition: SiStripCcu.cc:14
std::vector< SiStripModule > modules_
Definition: SiStripCcu.h:40