CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Private Member Functions | Private Attributes
SiStripRing Class Reference

#include <SiStripRing.h>

Public Member Functions

void addDevices (const FedChannelConnection &conn)
 
const std::vector< SiStripCcu > & ccus () const
 
const uint16_t & fecRing () const
 
 SiStripRing (const FedChannelConnection &conn)
 
 ~SiStripRing ()
 

Private Member Functions

 SiStripRing ()
 

Private Attributes

std::vector< SiStripCcuccus_
 
uint16_t fecRing_
 

Detailed Description

Author
R.Bainbridge

Definition at line 15 of file SiStripRing.h.

Constructor & Destructor Documentation

SiStripRing::SiStripRing ( const FedChannelConnection conn)

Definition at line 8 of file SiStripRing.cc.

References addDevices(), and ccus_.

9  : fecRing_( conn.fecRing() ),
10  ccus_()
11 {
12  ccus_.reserve(256);
13  addDevices( conn );
14 }
std::vector< SiStripCcu > ccus_
Definition: SiStripRing.h:43
uint16_t fecRing_
Definition: SiStripRing.h:40
const uint16_t & fecRing() const
void addDevices(const FedChannelConnection &conn)
Definition: SiStripRing.cc:18
SiStripRing::~SiStripRing ( )
inline

Definition at line 23 of file SiStripRing.h.

23 {;}
SiStripRing::SiStripRing ( )
inlineprivate

Definition at line 37 of file SiStripRing.h.

37 {;}

Member Function Documentation

void SiStripRing::addDevices ( const FedChannelConnection conn)

Definition at line 18 of file SiStripRing.cc.

References SiStripCcu::addDevices(), FedChannelConnection::ccuAddr(), ccus(), ccus_, and end.

Referenced by SiStripFec::addDevices(), and SiStripRing().

18  {
19  std::vector<SiStripCcu>::const_iterator iccu = ccus().begin();
20  while ( iccu != ccus().end() && (*iccu).ccuAddr() != conn.ccuAddr() ) { iccu++; }
21  if ( iccu == ccus().end() ) {
22  ccus_.push_back( SiStripCcu( conn ) );
23  } else {
24  const_cast<SiStripCcu&>(*iccu).addDevices( conn );
25  }
26 }
std::vector< SiStripCcu > ccus_
Definition: SiStripRing.h:43
const std::vector< SiStripCcu > & ccus() const
Definition: SiStripRing.h:49
#define end
Definition: vmac.h:38
const uint16_t & ccuAddr() const
void addDevices(const FedChannelConnection &conn)
Definition: SiStripCcu.cc:18
const std::vector< SiStripCcu > & SiStripRing::ccus ( ) const
inline

Definition at line 49 of file SiStripRing.h.

References ccus_.

Referenced by addDevices().

49 { return ccus_; }
std::vector< SiStripCcu > ccus_
Definition: SiStripRing.h:43
const uint16_t & SiStripRing::fecRing ( ) const
inline

Definition at line 50 of file SiStripRing.h.

References fecRing_.

50 { return fecRing_; }
uint16_t fecRing_
Definition: SiStripRing.h:40

Member Data Documentation

std::vector<SiStripCcu> SiStripRing::ccus_
private

Definition at line 43 of file SiStripRing.h.

Referenced by addDevices(), ccus(), and SiStripRing().

uint16_t SiStripRing::fecRing_
private

Definition at line 40 of file SiStripRing.h.

Referenced by fecRing().