CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
SiStripCcu.cc
Go to the documentation of this file.
1 // Last commit: $Id: SiStripCcu.cc,v 1.6 2007/03/28 09:13:33 bainbrid Exp $
2 
4 #include <iostream>
5 
6 // -----------------------------------------------------------------------------
7 //
9  : ccuAddr_( conn.ccuAddr() ),
10  modules_()
11 {
12  modules_.reserve(32);
13  addDevices( conn );
14 }
15 
16 // -----------------------------------------------------------------------------
17 //
19  std::vector<SiStripModule>::const_iterator imod = modules().begin();
20  while ( imod != modules().end() && (*imod).ccuChan() != conn.ccuChan() ) { imod++; }
21  if ( imod == modules().end() ) {
22  modules_.push_back( SiStripModule( conn ) );
23  } else {
24  const_cast<SiStripModule&>(*imod).addDevices( conn );
25  }
26 }
const std::vector< SiStripModule > & modules() const
Definition: SiStripCcu.h:49
Device and connection information at the level of a front-end module.
Definition: SiStripModule.h:25
void addDevices(const FedChannelConnection &conn)
static const char ccuAddr_[]
Class containning control, module, detector and connection information, at the level of a FED channel...
const uint16_t & ccuChan() const
#define end
Definition: vmac.h:38
void addDevices(const FedChannelConnection &conn)
Definition: SiStripCcu.cc:18
std::vector< SiStripModule > modules_
Definition: SiStripCcu.h:43