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
SiStripFec Class Reference

#include <SiStripFec.h>

Public Member Functions

void addDevices (const FedChannelConnection &conn)
 
const uint16_t & fecSlot () const
 
const std::vector< SiStripRing > & rings () const
 
 SiStripFec (const FedChannelConnection &conn)
 
 ~SiStripFec ()
 

Private Member Functions

 SiStripFec ()
 

Private Attributes

uint16_t fecSlot_
 
std::vector< SiStripRingrings_
 

Detailed Description

Author
R.Bainbridge

Definition at line 15 of file SiStripFec.h.

Constructor & Destructor Documentation

SiStripFec::SiStripFec ( const FedChannelConnection conn)

Definition at line 8 of file SiStripFec.cc.

References addDevices(), and rings_.

9  : fecSlot_( conn.fecSlot() ),
10  rings_()
11 {
12  rings_.reserve(8);
13  addDevices( conn );
14 }
const uint16_t & fecSlot() const
std::vector< SiStripRing > rings_
Definition: SiStripFec.h:43
void addDevices(const FedChannelConnection &conn)
Definition: SiStripFec.cc:18
uint16_t fecSlot_
Definition: SiStripFec.h:40
SiStripFec::~SiStripFec ( )
inline

Definition at line 23 of file SiStripFec.h.

23 {;}
SiStripFec::SiStripFec ( )
inlineprivate

Definition at line 37 of file SiStripFec.h.

37 {;}

Member Function Documentation

void SiStripFec::addDevices ( const FedChannelConnection conn)

Definition at line 18 of file SiStripFec.cc.

References SiStripRing::addDevices(), end, FedChannelConnection::fecRing(), rings(), and rings_.

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

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

Definition at line 50 of file SiStripFec.h.

References fecSlot_.

50 { return fecSlot_; }
uint16_t fecSlot_
Definition: SiStripFec.h:40
const std::vector< SiStripRing > & SiStripFec::rings ( ) const
inline

Definition at line 49 of file SiStripFec.h.

References rings_.

Referenced by addDevices().

49 { return rings_; }
std::vector< SiStripRing > rings_
Definition: SiStripFec.h:43

Member Data Documentation

uint16_t SiStripFec::fecSlot_
private

Definition at line 40 of file SiStripFec.h.

Referenced by fecSlot().

std::vector<SiStripRing> SiStripFec::rings_
private

Definition at line 43 of file SiStripFec.h.

Referenced by addDevices(), rings(), and SiStripFec().