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 | Friends
FedChannelConnection Class Reference

Class containning control, module, detector and connection information, at the level of a FED channel. More...

#include <FedChannelConnection.h>

Public Member Functions

uint16_t apvPairNumber () const
 
const uint16_t & ccuAddr () const
 
const uint16_t & ccuChan () const
 
void consistencyCheck () const
 
const bool & dcu () const
 
const uint32_t & dcuId () const
 
const uint32_t & detId () const
 
const uint16_t & fecCrate () const
 
const uint16_t & fecRing () const
 
const uint16_t & fecSlot () const
 
const uint16_t & fedCh () const
 
void fedCh (uint16_t &fed_ch)
 
 FedChannelConnection (const uint16_t &fec_crate, const uint16_t &fec_slot, const uint16_t &fec_ring, const uint16_t &ccu_addr, const uint16_t &ccu_chan, const uint16_t &apv0=0, const uint16_t &apv1=0, const uint32_t &dcu_id=0, const uint32_t &det_id=0, const uint16_t &pairs=0, const uint16_t &fed_id=0, const uint16_t &fed_ch=0, const uint16_t &length=0, const bool &dcu=false, const bool &pll=false, const bool &mux=false, const bool &lld=false)
 
 FedChannelConnection ()
 
const uint16_t & fedCrate () const
 
void fedCrate (uint16_t &fed_crate)
 
const uint16_t & fedId () const
 
void fedId (uint16_t &fed_id)
 
const uint16_t & fedSlot () const
 
void fedSlot (uint16_t &fed_slot)
 
const uint16_t & fiberLength () const
 
const uint16_t & i2cAddr (const uint16_t &apv0_or_1) const
 
bool isConnected () const
 
const bool & lld () const
 
uint16_t lldChannel () const
 
const bool & mux () const
 
const uint16_t & nApvPairs () const
 
uint16_t nApvs () const
 
uint16_t nDetStrips () const
 
const bool & pll () const
 
void print (std::stringstream &) const
 
void terse (std::stringstream &) const
 
 ~FedChannelConnection ()
 

Private Member Functions

template<class Archive >
void serialize (Archive &ar, const unsigned int version)
 

Private Attributes

uint16_t apv0_
 
uint16_t apv1_
 
uint16_t ccuAddr_
 
uint16_t ccuChan_
 
bool dcu0x00_
 
uint32_t dcuId_
 
uint32_t detId_
 
uint16_t fecCrate_
 
uint16_t fecRing_
 
uint16_t fecSlot_
 
uint16_t fedCh_
 
uint16_t fedCrate_
 
uint16_t fedId_
 
uint16_t fedSlot_
 
uint16_t length_
 
bool lld0x60_
 
bool mux0x43_
 
uint16_t nApvPairs_
 
bool pll0x44_
 

Friends

class boost::serialization::access
 
template<typename CondSerializationT , typename Enabled >
struct cond::serialization::access
 

Detailed Description

Class containning control, module, detector and connection information, at the level of a FED channel.

Author
R.Bainbridge

Definition at line 26 of file FedChannelConnection.h.

Constructor & Destructor Documentation

FedChannelConnection::FedChannelConnection ( const uint16_t &  fec_crate,
const uint16_t &  fec_slot,
const uint16_t &  fec_ring,
const uint16_t &  ccu_addr,
const uint16_t &  ccu_chan,
const uint16_t &  apv0 = 0,
const uint16_t &  apv1 = 0,
const uint32_t &  dcu_id = 0,
const uint32_t &  det_id = 0,
const uint16_t &  pairs = 0,
const uint16_t &  fed_id = 0,
const uint16_t &  fed_ch = 0,
const uint16_t &  length = 0,
const bool &  dcu = false,
const bool &  pll = false,
const bool &  mux = false,
const bool &  lld = false 
)

Constructor requires at least information to uniquely identify a front-end module: ie, crate + FEC + ring + CCU + module.

Definition at line 11 of file FedChannelConnection.cc.

FedChannelConnection::FedChannelConnection ( )

Default constructor.

Definition at line 51 of file FedChannelConnection.cc.

FedChannelConnection::~FedChannelConnection ( )
inline

Default destructor.

Definition at line 56 of file FedChannelConnection.h.

Member Function Documentation

uint16_t FedChannelConnection::apvPairNumber ( ) const

Returns APV pair number for this connection object. This can be either 0->1 or 0->2, depending on number of detector strips.

Definition at line 118 of file FedChannelConnection.cc.

Referenced by SiStripShotFilter::filter(), and PedsOnlyTask::update().

const uint16_t & FedChannelConnection::ccuAddr ( ) const
inline

Returns CCU address.

Definition at line 208 of file FedChannelConnection.h.

Referenced by SiStripRing::addDevices().

const uint16_t & FedChannelConnection::ccuChan ( ) const
inline

Returns CCU channel.

Definition at line 209 of file FedChannelConnection.h.

Referenced by SiStripCcu::addDevices().

void FedChannelConnection::consistencyCheck ( ) const
inline

Performs consistency check for this connection object.

Definition at line 64 of file FedChannelConnection.h.

const bool & FedChannelConnection::dcu ( ) const
inline

Indicates whether DCU ASIC is found.

Definition at line 211 of file FedChannelConnection.h.

const uint32_t & FedChannelConnection::dcuId ( ) const
inline

Returns DCUid for this module.

Definition at line 216 of file FedChannelConnection.h.

Referenced by SiStripFecCabling::dcuId().

const uint32_t & FedChannelConnection::detId ( ) const
inline

Returns DetId for this module.

Definition at line 217 of file FedChannelConnection.h.

Referenced by SiStripFecCabling::detId(), and SiStripShotFilter::filter().

const uint16_t & FedChannelConnection::fecCrate ( ) const
inline

Returns FEC crate number.

Definition at line 205 of file FedChannelConnection.h.

const uint16_t & FedChannelConnection::fecRing ( ) const
inline

Returns FEC ring number.

Definition at line 207 of file FedChannelConnection.h.

Referenced by SiStripFec::addDevices().

const uint16_t & FedChannelConnection::fecSlot ( ) const
inline

Returns slot number of FEC.

Definition at line 206 of file FedChannelConnection.h.

Referenced by SiStripFecCrate::addDevices().

const uint16_t & FedChannelConnection::fedCh ( ) const
inline

Returns FED id for this channel.

Definition at line 225 of file FedChannelConnection.h.

void FedChannelConnection::fedCh ( uint16_t &  fed_ch)
inline

Sets FED id for this channel.

Definition at line 230 of file FedChannelConnection.h.

const uint16_t & FedChannelConnection::fedCrate ( ) const
inline

Returns FED crate for this channel.

Definition at line 222 of file FedChannelConnection.h.

void FedChannelConnection::fedCrate ( uint16_t &  fed_crate)
inline

Sets FED crate for this channel.

Definition at line 231 of file FedChannelConnection.h.

const uint16_t & FedChannelConnection::fedId ( ) const
inline

Returns FED id for this channel.

Definition at line 224 of file FedChannelConnection.h.

void FedChannelConnection::fedId ( uint16_t &  fed_id)
inline

Sets FED id for this channel.

Definition at line 229 of file FedChannelConnection.h.

const uint16_t & FedChannelConnection::fedSlot ( ) const
inline

Returns FED slot for this channel.

Definition at line 223 of file FedChannelConnection.h.

void FedChannelConnection::fedSlot ( uint16_t &  fed_slot)
inline

Sets FED slot for this channel.

Definition at line 232 of file FedChannelConnection.h.

const uint16_t & FedChannelConnection::fiberLength ( ) const
inline

Returns the length of the optical fiber

Definition at line 227 of file FedChannelConnection.h.

const uint16_t & FedChannelConnection::i2cAddr ( const uint16_t &  apv0_or_1) const

Indicates whether APV0 or APV1 of the pair has been found: a non-zero value indicates the I2C address; a null value signifies a problematic APV.

Definition at line 83 of file FedChannelConnection.cc.

bool FedChannelConnection::isConnected ( ) const
inline

Identifies a valid connection.

Definition at line 200 of file FedChannelConnection.h.

const bool & FedChannelConnection::lld ( ) const
inline

Indicates whether Linear Laser Driver ASIC is found.

Definition at line 214 of file FedChannelConnection.h.

uint16_t FedChannelConnection::lldChannel ( ) const

Returns Laser Driver channel (1->3) for this channel.

Definition at line 99 of file FedChannelConnection.cc.

const bool & FedChannelConnection::mux ( ) const
inline

Indicates whether APV-MUX ASIC is found.

Definition at line 212 of file FedChannelConnection.h.

const uint16_t & FedChannelConnection::nApvPairs ( ) const
inline

Returns number of APV pairs for this module.

Definition at line 219 of file FedChannelConnection.h.

Referenced by SiStripFecCabling::nApvPairs().

uint16_t FedChannelConnection::nApvs ( ) const
inline

Returns number of APVs for this module.

Definition at line 220 of file FedChannelConnection.h.

uint16_t FedChannelConnection::nDetStrips ( ) const
inline

Returns number of detector strips for this module.

Definition at line 218 of file FedChannelConnection.h.

const bool & FedChannelConnection::pll ( ) const
inline

Indicates whether PLL ASIC is found.

Definition at line 213 of file FedChannelConnection.h.

void FedChannelConnection::print ( std::stringstream &  ss) const

Prints all information for this connection object.

Definition at line 160 of file FedChannelConnection.cc.

template<class Archive >
void FedChannelConnection::serialize ( Archive &  ar,
const unsigned int  version 
)
private
void FedChannelConnection::terse ( std::stringstream &  ss) const

Prints terse information for this connection object.

Definition at line 199 of file FedChannelConnection.cc.

Friends And Related Function Documentation

friend class boost::serialization::access
friend

Definition at line 195 of file FedChannelConnection.h.

template<typename CondSerializationT , typename Enabled >
friend struct cond::serialization::access
friend

Definition at line 195 of file FedChannelConnection.h.

Member Data Documentation

uint16_t FedChannelConnection::apv0_
private

Definition at line 173 of file FedChannelConnection.h.

uint16_t FedChannelConnection::apv1_
private

Definition at line 174 of file FedChannelConnection.h.

uint16_t FedChannelConnection::ccuAddr_
private

Definition at line 169 of file FedChannelConnection.h.

uint16_t FedChannelConnection::ccuChan_
private

Definition at line 170 of file FedChannelConnection.h.

bool FedChannelConnection::dcu0x00_
private

Definition at line 189 of file FedChannelConnection.h.

uint32_t FedChannelConnection::dcuId_
private

Definition at line 177 of file FedChannelConnection.h.

uint32_t FedChannelConnection::detId_
private

Definition at line 178 of file FedChannelConnection.h.

uint16_t FedChannelConnection::fecCrate_
private

Definition at line 166 of file FedChannelConnection.h.

uint16_t FedChannelConnection::fecRing_
private

Definition at line 168 of file FedChannelConnection.h.

uint16_t FedChannelConnection::fecSlot_
private

Definition at line 167 of file FedChannelConnection.h.

uint16_t FedChannelConnection::fedCh_
private

Definition at line 185 of file FedChannelConnection.h.

uint16_t FedChannelConnection::fedCrate_
private

Definition at line 182 of file FedChannelConnection.h.

uint16_t FedChannelConnection::fedId_
private

Definition at line 184 of file FedChannelConnection.h.

uint16_t FedChannelConnection::fedSlot_
private

Definition at line 183 of file FedChannelConnection.h.

uint16_t FedChannelConnection::length_
private

Definition at line 186 of file FedChannelConnection.h.

bool FedChannelConnection::lld0x60_
private

Definition at line 192 of file FedChannelConnection.h.

bool FedChannelConnection::mux0x43_
private

Definition at line 190 of file FedChannelConnection.h.

uint16_t FedChannelConnection::nApvPairs_
private

Definition at line 179 of file FedChannelConnection.h.

bool FedChannelConnection::pll0x44_
private

Definition at line 191 of file FedChannelConnection.h.