CMS 3D CMS Logo

List of all members | Public Member Functions | Private Member Functions | Private Attributes
SiStripCcu Class Reference

#include <SiStripCcu.h>

Public Member Functions

void addDevices (const FedChannelConnection &conn)
 
const uint16_t & ccuAddr () const
 
const std::vector< SiStripModule > & modules () const
 
std::vector< SiStripModule > & modules ()
 
 SiStripCcu (const FedChannelConnection &conn)
 
 ~SiStripCcu ()
 

Private Member Functions

 SiStripCcu ()
 

Private Attributes

uint16_t ccuAddr_
 
std::vector< SiStripModulemodules_
 

Detailed Description

Author
R.Bainbridge

Definition at line 14 of file SiStripCcu.h.

Constructor & Destructor Documentation

SiStripCcu::SiStripCcu ( const FedChannelConnection conn)

Definition at line 7 of file SiStripCcu.cc.

References addDevices(), and modules_.

7  : ccuAddr_(conn.ccuAddr()), modules_() {
8  modules_.reserve(32);
9  addDevices(conn);
10 }
uint16_t ccuAddr_
Definition: SiStripCcu.h:37
const uint16_t & ccuAddr() const
void addDevices(const FedChannelConnection &conn)
Definition: SiStripCcu.cc:14
std::vector< SiStripModule > modules_
Definition: SiStripCcu.h:40
SiStripCcu::~SiStripCcu ( )
inline

Definition at line 20 of file SiStripCcu.h.

References addDevices(), ccuAddr(), and modules().

20 { ; }
SiStripCcu::SiStripCcu ( )
inlineprivate

Definition at line 34 of file SiStripCcu.h.

34 { ; }

Member Function Documentation

void SiStripCcu::addDevices ( const FedChannelConnection conn)

Definition at line 14 of file SiStripCcu.cc.

References FedChannelConnection::ccuChan(), and modules_.

Referenced by SiStripCcu(), and ~SiStripCcu().

14  {
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
const uint16_t & ccuChan() const
std::vector< SiStripModule > modules_
Definition: SiStripCcu.h:40
const uint16_t & SiStripCcu::ccuAddr ( ) const
inline

Definition at line 47 of file SiStripCcu.h.

References ccuAddr_.

Referenced by ~SiStripCcu().

47 { return ccuAddr_; }
uint16_t ccuAddr_
Definition: SiStripCcu.h:37
const std::vector< SiStripModule > & SiStripCcu::modules ( ) const
inline

Definition at line 45 of file SiStripCcu.h.

References modules_.

Referenced by ~SiStripCcu().

45 { return modules_; }
std::vector< SiStripModule > modules_
Definition: SiStripCcu.h:40
std::vector< SiStripModule > & SiStripCcu::modules ( )
inline

Definition at line 46 of file SiStripCcu.h.

References modules_.

46 { return modules_; }
std::vector< SiStripModule > modules_
Definition: SiStripCcu.h:40

Member Data Documentation

uint16_t SiStripCcu::ccuAddr_
private

Definition at line 37 of file SiStripCcu.h.

Referenced by ccuAddr().

std::vector<SiStripModule> SiStripCcu::modules_
private

Definition at line 40 of file SiStripCcu.h.

Referenced by addDevices(), modules(), and SiStripCcu().