ATLAS Offline Software
Classes | Public Member Functions | Static Public Member Functions | Protected Attributes | Private Member Functions | Private Attributes | Static Private Attributes | List of all members
Muon::nsw::NSWPadTriggerL1a Class Reference

#include <NSWPadTriggerL1a.h>

Inheritance diagram for Muon::nsw::NSWPadTriggerL1a:
Collaboration diagram for Muon::nsw::NSWPadTriggerL1a:

Classes

struct  DecodedData
 
struct  OneBCOfData
 

Public Member Functions

 NSWPadTriggerL1a (const uint32_t *bs, const uint32_t remaining)
 
virtual ~NSWPadTriggerL1a ()=default
 
uint32_t getNumberOfHits () const
 
uint32_t getNumberOfPfebs () const
 
uint32_t getNumberOfTriggers () const
 
uint32_t getNumberOfBcids () const
 
const std::vector< uint32_t > & getHitRelBcids () const
 
const std::vector< uint32_t > & getHitPfebs () const
 
const std::vector< uint32_t > & getHitTdsChannels () const
 
const std::vector< uint32_t > & getHitVmmChannels () const
 
const std::vector< uint32_t > & getHitVmms () const
 
const std::vector< uint32_t > & getHitPadChannels () const
 
const std::vector< uint32_t > & getPfebAddresses () const
 
const std::vector< uint32_t > & getPfebNChannels () const
 
const std::vector< uint32_t > & getPfebDisconnecteds () const
 
const std::vector< uint32_t > & getTriggerBandIds () const
 
const std::vector< uint32_t > & getTriggerPhiIds () const
 
const std::vector< uint32_t > & getTriggerRelBcids () const
 
const std::vector< uint32_t > & getBcidRels () const
 
const std::vector< uint32_t > & getBcidStatuses () const
 
const std::vector< uint32_t > & getBcidMultZeros () const
 
const std::vector< uint32_t > & getBcidMultiplicities () const
 
uint32_t getFlags () const
 
uint32_t getEc () const
 
uint32_t getFragid () const
 
uint32_t getSecid () const
 
uint32_t getSpare () const
 
uint32_t getOrbit () const
 
uint32_t getBcid () const
 
uint32_t getL1id () const
 
uint32_t getOrbitid () const
 
uint32_t getOrbit1 () const
 
uint32_t getStatus () const
 
unsigned int nwords () const
 
unsigned int nwordsFlx () const
 
unsigned int status () const
 
bool suspect () const
 
uint32_t elinkWord () const
 
const std::shared_ptr< Muon::nsw::NSWResourceId > & elinkId () const
 

Static Public Member Functions

static bool isLarge (const uint32_t sec)
 
static bool isSmall (const uint32_t sec)
 
static bool isA (const uint32_t sourceid)
 
static bool isC (const uint32_t sourceid)
 
static uint32_t radius (const uint32_t pfeb)
 
static uint32_t layer (const uint32_t pfeb)
 
static uint32_t sector (const uint32_t sourceid)
 
static uint32_t quad (const uint32_t pfeb)
 
static uint32_t quadlayer (const uint32_t pfeb)
 
static uint32_t offlineGasgap (const uint32_t pfeb)
 
static uint32_t offlineMultilayer (const uint32_t pfeb)
 
static uint32_t offlineChannelNumber (const uint32_t sec, const uint32_t pfeb, const uint32_t vmm, const uint32_t vmmchan)
 
static uint32_t offlineStationAbsEta (const uint32_t pfeb)
 
static uint32_t offlineStationPhi (const uint32_t sourceid)
 
static std::string offlineStationName (const uint32_t sec)
 
static uint8_t getPadTriggerToTds (const size_t pfeb, const size_t chan, const std::string &size)
 
static uint8_t getTdsToPadTrigger (const size_t pfeb, const uint8_t tdschan, const std::string &size)
 

Protected Attributes

unsigned int m_wordCount {}
 
unsigned int m_wordCountFlx {}
 
unsigned int m_packet_status {}
 
bool m_packet_sus {}
 
uint32_t m_elinkWord {}
 
std::shared_ptr< Muon::nsw::NSWResourceIdm_elinkId
 

Private Member Functions

uint32_t checkSize (const std::vector< uint32_t > &words) const
 
bool isNullPayload (const std::vector< uint32_t > &words) const
 
uint32_t lastValidByteIndex (const std::vector< uint32_t > &words) const
 
uint32_t roundUpIfOdd (const uint32_t nbytes) const
 
uint8_t getByte (const std::vector< uint32_t > &words, size_t byteIndex) const
 
std::vector< uint8_t > getBits (const std::vector< uint32_t > &words, size_t firstBit, size_t lastBit) const
 
uint32_t getBitsAsWord32 (const std::vector< uint32_t > &words, size_t firstBit, size_t lastBit) const
 
uint32_t getFlags (const std::vector< uint32_t > &words) const
 
uint32_t getEc (const std::vector< uint32_t > &words) const
 
uint32_t getFragid (const std::vector< uint32_t > &words) const
 
uint32_t getSecid (const std::vector< uint32_t > &words) const
 
uint32_t getSpare (const std::vector< uint32_t > &words) const
 
uint32_t getOrbit (const std::vector< uint32_t > &words) const
 
uint32_t getBcid (const std::vector< uint32_t > &words) const
 
uint32_t getL1id (const std::vector< uint32_t > &words) const
 
uint32_t getOrbitid (const std::vector< uint32_t > &words) const
 
uint32_t getOrbit1 (const std::vector< uint32_t > &words) const
 
OneBCOfData getOneBcOfCompressedData (const std::vector< uint32_t > &words, const uint32_t bitIndex, const uint32_t relbcid, const Constants::ArrayOfPfebChannels &mapPadTriggerToTds, const Constants::ArrayOfPfebs &numberOfChannels) const
 
uint32_t getMultiplicity (const std::vector< uint32_t > &words, const uint32_t bitIndex) const
 
uint32_t getMult0 (const std::vector< uint32_t > &words, const uint32_t bitIndex) const
 
uint32_t getPhiid0 (const std::vector< uint32_t > &words, const uint32_t bitIndex) const
 
std::vector< uint32_t > getPhiids (const std::vector< uint32_t > &words, const uint32_t bitIndex) const
 
std::vector< uint32_t > getBandids (const std::vector< uint32_t > &words, const uint32_t bitIndex) const
 
uint32_t getL1size (const std::vector< uint32_t > &words, const uint32_t bitIndex) const
 
uint32_t getL0size (const std::vector< uint32_t > &words, const uint32_t bitIndex) const
 
uint32_t getL2 (const std::vector< uint32_t > &words, const uint32_t bitIndex) const
 
std::vector< uint32_t > getL1 (const std::vector< uint32_t > &words, const uint32_t bitIndex, const uint32_t l1size) const
 
std::vector< uint32_t > getL0 (const std::vector< uint32_t > &words, const uint32_t bitIndex, const uint32_t l1size, const uint32_t l0size) const
 
uint32_t getStatus (const std::vector< uint32_t > &words, const uint32_t bitIndex) const
 
std::vector< uint8_t > getBytemap (const uint32_t L2, const std::vector< uint32_t > &L1, const std::vector< uint32_t > &L0) const
 
std::vector< uint8_t > getBitmap (const std::vector< uint8_t > &bytemap) const
 
std::vector< std::vector< uint8_t > > getBitmaps (const std::vector< uint8_t > &bytemap, const Constants::ArrayOfPfebs &numberOfChannels) const
 
std::vector< std::vector< uint8_t > > getHits (const std::vector< std::vector< uint8_t > > &bitmap) const
 
bool getDisconnected (const std::vector< uint8_t > &bitmap) const
 
std::vector< bool > getDisconnecteds (const std::vector< std::vector< uint8_t > > &bitmap) const
 
std::vector< std::vector< uint8_t > > getTdsChannels (const std::vector< std::vector< uint8_t > > &hits, const Constants::ArrayOfPfebChannels &mapPadTriggerToTds) const
 

Private Attributes

DecodedData m_decoded
 
uint32_t m_hit_n {0}
 
uint32_t m_pfeb_n {0}
 
uint32_t m_trigger_n {0}
 
uint32_t m_bcid_n {0}
 
std::vector< uint32_t > m_hit_relbcid {}
 
std::vector< uint32_t > m_hit_pfeb {}
 
std::vector< uint32_t > m_hit_tdschannel {}
 
std::vector< uint32_t > m_hit_vmmchannel {}
 
std::vector< uint32_t > m_hit_vmm {}
 
std::vector< uint32_t > m_hit_padchannel {}
 
std::vector< uint32_t > m_pfeb_addr {}
 
std::vector< uint32_t > m_pfeb_nchan {}
 
std::vector< uint32_t > m_pfeb_disconnected {}
 
std::vector< uint32_t > m_trigger_bandid {}
 
std::vector< uint32_t > m_trigger_phiid {}
 
std::vector< uint32_t > m_trigger_relbcid {}
 
std::vector< uint32_t > m_bcid_rel {}
 
std::vector< uint32_t > m_bcid_status {}
 
std::vector< uint32_t > m_bcid_multzero {}
 
std::vector< uint32_t > m_bcid_multiplicity {}
 
bool m_hasOrbit {true}
 

Static Private Attributes

static constexpr Constants::ArrayOfPfebs m_numberOfChannelsL
 
static constexpr Constants::ArrayOfPfebs m_numberOfChannelsS
 
static constexpr Constants::ArrayOfPfebChannels m_mapPadTriggerToTdsL
 
static constexpr Constants::ArrayOfPfebChannels m_mapPadTriggerToTdsS
 

Detailed Description

Definition at line 141 of file NSWPadTriggerL1a.h.

Constructor & Destructor Documentation

◆ NSWPadTriggerL1a()

Muon::nsw::NSWPadTriggerL1a::NSWPadTriggerL1a ( const uint32_t *  bs,
const uint32_t  remaining 
)

◆ ~NSWPadTriggerL1a()

virtual Muon::nsw::NSWPadTriggerL1a::~NSWPadTriggerL1a ( )
virtualdefault

Member Function Documentation

◆ checkSize()

uint32_t Muon::nsw::NSWPadTriggerL1a::checkSize ( const std::vector< uint32_t > &  words) const
private

◆ elinkId()

const std::shared_ptr<Muon::nsw::NSWResourceId>& Muon::nsw::NSWTriggerElink::elinkId ( ) const
inlineinherited

Definition at line 63 of file NSWTriggerElink.h.

63 {return m_elinkId;};

◆ elinkWord()

uint32_t Muon::nsw::NSWTriggerElink::elinkWord ( ) const
inlineinherited

Definition at line 62 of file NSWTriggerElink.h.

62 {return m_elinkWord;};

◆ getBandids()

std::vector<uint32_t> Muon::nsw::NSWPadTriggerL1a::getBandids ( const std::vector< uint32_t > &  words,
const uint32_t  bitIndex 
) const
private

◆ getBcid() [1/2]

uint32_t Muon::nsw::NSWPadTriggerL1a::getBcid ( ) const
inline

Definition at line 182 of file NSWPadTriggerL1a.h.

182 { return m_decoded.bcid; };

◆ getBcid() [2/2]

uint32_t Muon::nsw::NSWPadTriggerL1a::getBcid ( const std::vector< uint32_t > &  words) const
private

◆ getBcidMultiplicities()

const std::vector<uint32_t>& Muon::nsw::NSWPadTriggerL1a::getBcidMultiplicities ( ) const
inline

Definition at line 171 of file NSWPadTriggerL1a.h.

171 { return m_bcid_multiplicity; };

◆ getBcidMultZeros()

const std::vector<uint32_t>& Muon::nsw::NSWPadTriggerL1a::getBcidMultZeros ( ) const
inline

Definition at line 170 of file NSWPadTriggerL1a.h.

170 { return m_bcid_multzero; };

◆ getBcidRels()

const std::vector<uint32_t>& Muon::nsw::NSWPadTriggerL1a::getBcidRels ( ) const
inline

Definition at line 168 of file NSWPadTriggerL1a.h.

168 { return m_bcid_rel; };

◆ getBcidStatuses()

const std::vector<uint32_t>& Muon::nsw::NSWPadTriggerL1a::getBcidStatuses ( ) const
inline

Definition at line 169 of file NSWPadTriggerL1a.h.

169 { return m_bcid_status; };

◆ getBitmap()

std::vector<uint8_t> Muon::nsw::NSWPadTriggerL1a::getBitmap ( const std::vector< uint8_t > &  bytemap) const
private

◆ getBitmaps()

std::vector< std::vector<uint8_t> > Muon::nsw::NSWPadTriggerL1a::getBitmaps ( const std::vector< uint8_t > &  bytemap,
const Constants::ArrayOfPfebs numberOfChannels 
) const
private

◆ getBits()

std::vector<uint8_t> Muon::nsw::NSWPadTriggerL1a::getBits ( const std::vector< uint32_t > &  words,
size_t  firstBit,
size_t  lastBit 
) const
private

◆ getBitsAsWord32()

uint32_t Muon::nsw::NSWPadTriggerL1a::getBitsAsWord32 ( const std::vector< uint32_t > &  words,
size_t  firstBit,
size_t  lastBit 
) const
private

◆ getByte()

uint8_t Muon::nsw::NSWPadTriggerL1a::getByte ( const std::vector< uint32_t > &  words,
size_t  byteIndex 
) const
private

◆ getBytemap()

std::vector<uint8_t> Muon::nsw::NSWPadTriggerL1a::getBytemap ( const uint32_t  L2,
const std::vector< uint32_t > &  L1,
const std::vector< uint32_t > &  L0 
) const
private

◆ getDisconnected()

bool Muon::nsw::NSWPadTriggerL1a::getDisconnected ( const std::vector< uint8_t > &  bitmap) const
private

◆ getDisconnecteds()

std::vector<bool> Muon::nsw::NSWPadTriggerL1a::getDisconnecteds ( const std::vector< std::vector< uint8_t > > &  bitmap) const
private

◆ getEc() [1/2]

uint32_t Muon::nsw::NSWPadTriggerL1a::getEc ( ) const
inline

Definition at line 177 of file NSWPadTriggerL1a.h.

177 { return m_decoded.ec; };

◆ getEc() [2/2]

uint32_t Muon::nsw::NSWPadTriggerL1a::getEc ( const std::vector< uint32_t > &  words) const
private

◆ getFlags() [1/2]

uint32_t Muon::nsw::NSWPadTriggerL1a::getFlags ( ) const
inline

Definition at line 176 of file NSWPadTriggerL1a.h.

176 { return m_decoded.flags; };

◆ getFlags() [2/2]

uint32_t Muon::nsw::NSWPadTriggerL1a::getFlags ( const std::vector< uint32_t > &  words) const
private

◆ getFragid() [1/2]

uint32_t Muon::nsw::NSWPadTriggerL1a::getFragid ( ) const
inline

Definition at line 178 of file NSWPadTriggerL1a.h.

178 { return m_decoded.fragid; };

◆ getFragid() [2/2]

uint32_t Muon::nsw::NSWPadTriggerL1a::getFragid ( const std::vector< uint32_t > &  words) const
private

◆ getHitPadChannels()

const std::vector<uint32_t>& Muon::nsw::NSWPadTriggerL1a::getHitPadChannels ( ) const
inline

Definition at line 161 of file NSWPadTriggerL1a.h.

161 { return m_hit_padchannel; };

◆ getHitPfebs()

const std::vector<uint32_t>& Muon::nsw::NSWPadTriggerL1a::getHitPfebs ( ) const
inline

Definition at line 157 of file NSWPadTriggerL1a.h.

157 { return m_hit_pfeb; };

◆ getHitRelBcids()

const std::vector<uint32_t>& Muon::nsw::NSWPadTriggerL1a::getHitRelBcids ( ) const
inline

Definition at line 156 of file NSWPadTriggerL1a.h.

156 { return m_hit_relbcid; };

◆ getHits()

std::vector< std::vector<uint8_t> > Muon::nsw::NSWPadTriggerL1a::getHits ( const std::vector< std::vector< uint8_t > > &  bitmap) const
private

◆ getHitTdsChannels()

const std::vector<uint32_t>& Muon::nsw::NSWPadTriggerL1a::getHitTdsChannels ( ) const
inline

Definition at line 158 of file NSWPadTriggerL1a.h.

158 { return m_hit_tdschannel; };

◆ getHitVmmChannels()

const std::vector<uint32_t>& Muon::nsw::NSWPadTriggerL1a::getHitVmmChannels ( ) const
inline

Definition at line 159 of file NSWPadTriggerL1a.h.

159 { return m_hit_vmmchannel; };

◆ getHitVmms()

const std::vector<uint32_t>& Muon::nsw::NSWPadTriggerL1a::getHitVmms ( ) const
inline

Definition at line 160 of file NSWPadTriggerL1a.h.

160 { return m_hit_vmm; };

◆ getL0()

std::vector<uint32_t> Muon::nsw::NSWPadTriggerL1a::getL0 ( const std::vector< uint32_t > &  words,
const uint32_t  bitIndex,
const uint32_t  l1size,
const uint32_t  l0size 
) const
private

◆ getL0size()

uint32_t Muon::nsw::NSWPadTriggerL1a::getL0size ( const std::vector< uint32_t > &  words,
const uint32_t  bitIndex 
) const
private

◆ getL1()

std::vector<uint32_t> Muon::nsw::NSWPadTriggerL1a::getL1 ( const std::vector< uint32_t > &  words,
const uint32_t  bitIndex,
const uint32_t  l1size 
) const
private

◆ getL1id() [1/2]

uint32_t Muon::nsw::NSWPadTriggerL1a::getL1id ( ) const
inline

Definition at line 183 of file NSWPadTriggerL1a.h.

183 { return m_decoded.l1id; };

◆ getL1id() [2/2]

uint32_t Muon::nsw::NSWPadTriggerL1a::getL1id ( const std::vector< uint32_t > &  words) const
private

◆ getL1size()

uint32_t Muon::nsw::NSWPadTriggerL1a::getL1size ( const std::vector< uint32_t > &  words,
const uint32_t  bitIndex 
) const
private

◆ getL2()

uint32_t Muon::nsw::NSWPadTriggerL1a::getL2 ( const std::vector< uint32_t > &  words,
const uint32_t  bitIndex 
) const
private

◆ getMult0()

uint32_t Muon::nsw::NSWPadTriggerL1a::getMult0 ( const std::vector< uint32_t > &  words,
const uint32_t  bitIndex 
) const
private

◆ getMultiplicity()

uint32_t Muon::nsw::NSWPadTriggerL1a::getMultiplicity ( const std::vector< uint32_t > &  words,
const uint32_t  bitIndex 
) const
private

◆ getNumberOfBcids()

uint32_t Muon::nsw::NSWPadTriggerL1a::getNumberOfBcids ( ) const
inline

Definition at line 155 of file NSWPadTriggerL1a.h.

155 { return m_bcid_n; };

◆ getNumberOfHits()

uint32_t Muon::nsw::NSWPadTriggerL1a::getNumberOfHits ( ) const
inline

Definition at line 152 of file NSWPadTriggerL1a.h.

152 { return m_hit_n; };

◆ getNumberOfPfebs()

uint32_t Muon::nsw::NSWPadTriggerL1a::getNumberOfPfebs ( ) const
inline

Definition at line 153 of file NSWPadTriggerL1a.h.

153 { return m_pfeb_n; };

◆ getNumberOfTriggers()

uint32_t Muon::nsw::NSWPadTriggerL1a::getNumberOfTriggers ( ) const
inline

Definition at line 154 of file NSWPadTriggerL1a.h.

154 { return m_trigger_n; };

◆ getOneBcOfCompressedData()

OneBCOfData Muon::nsw::NSWPadTriggerL1a::getOneBcOfCompressedData ( const std::vector< uint32_t > &  words,
const uint32_t  bitIndex,
const uint32_t  relbcid,
const Constants::ArrayOfPfebChannels mapPadTriggerToTds,
const Constants::ArrayOfPfebs numberOfChannels 
) const
private

◆ getOrbit() [1/2]

uint32_t Muon::nsw::NSWPadTriggerL1a::getOrbit ( ) const
inline

Definition at line 181 of file NSWPadTriggerL1a.h.

181 { return m_decoded.orbit; };

◆ getOrbit() [2/2]

uint32_t Muon::nsw::NSWPadTriggerL1a::getOrbit ( const std::vector< uint32_t > &  words) const
private

◆ getOrbit1() [1/2]

uint32_t Muon::nsw::NSWPadTriggerL1a::getOrbit1 ( ) const
inline

Definition at line 189 of file NSWPadTriggerL1a.h.

189 { return m_decoded.orbit1; };

◆ getOrbit1() [2/2]

uint32_t Muon::nsw::NSWPadTriggerL1a::getOrbit1 ( const std::vector< uint32_t > &  words) const
private

◆ getOrbitid() [1/2]

uint32_t Muon::nsw::NSWPadTriggerL1a::getOrbitid ( ) const
inline

Definition at line 188 of file NSWPadTriggerL1a.h.

188 { return m_decoded.orbitid; };

◆ getOrbitid() [2/2]

uint32_t Muon::nsw::NSWPadTriggerL1a::getOrbitid ( const std::vector< uint32_t > &  words) const
private

◆ getPadTriggerToTds()

static uint8_t Muon::nsw::NSWPadTriggerL1a::getPadTriggerToTds ( const size_t  pfeb,
const size_t  chan,
const std::string &  size 
)
inlinestatic

Definition at line 306 of file NSWPadTriggerL1a.h.

308  {
309  const auto& chans = (size == "S") ?
312  return chans.at(pfeb).at(chan);
313  }

◆ getPfebAddresses()

const std::vector<uint32_t>& Muon::nsw::NSWPadTriggerL1a::getPfebAddresses ( ) const
inline

Definition at line 162 of file NSWPadTriggerL1a.h.

162 { return m_pfeb_addr; };

◆ getPfebDisconnecteds()

const std::vector<uint32_t>& Muon::nsw::NSWPadTriggerL1a::getPfebDisconnecteds ( ) const
inline

Definition at line 164 of file NSWPadTriggerL1a.h.

164 { return m_pfeb_disconnected; };

◆ getPfebNChannels()

const std::vector<uint32_t>& Muon::nsw::NSWPadTriggerL1a::getPfebNChannels ( ) const
inline

Definition at line 163 of file NSWPadTriggerL1a.h.

163 { return m_pfeb_nchan; };

◆ getPhiid0()

uint32_t Muon::nsw::NSWPadTriggerL1a::getPhiid0 ( const std::vector< uint32_t > &  words,
const uint32_t  bitIndex 
) const
private

◆ getPhiids()

std::vector<uint32_t> Muon::nsw::NSWPadTriggerL1a::getPhiids ( const std::vector< uint32_t > &  words,
const uint32_t  bitIndex 
) const
private

◆ getSecid() [1/2]

uint32_t Muon::nsw::NSWPadTriggerL1a::getSecid ( ) const
inline

Definition at line 179 of file NSWPadTriggerL1a.h.

179 { return m_decoded.secid; };

◆ getSecid() [2/2]

uint32_t Muon::nsw::NSWPadTriggerL1a::getSecid ( const std::vector< uint32_t > &  words) const
private

◆ getSpare() [1/2]

uint32_t Muon::nsw::NSWPadTriggerL1a::getSpare ( ) const
inline

Definition at line 180 of file NSWPadTriggerL1a.h.

180 { return m_decoded.spare; };

◆ getSpare() [2/2]

uint32_t Muon::nsw::NSWPadTriggerL1a::getSpare ( const std::vector< uint32_t > &  words) const
private

◆ getStatus() [1/2]

uint32_t Muon::nsw::NSWPadTriggerL1a::getStatus ( ) const
inline

Definition at line 190 of file NSWPadTriggerL1a.h.

190 { return m_decoded.status; };

◆ getStatus() [2/2]

uint32_t Muon::nsw::NSWPadTriggerL1a::getStatus ( const std::vector< uint32_t > &  words,
const uint32_t  bitIndex 
) const
private

◆ getTdsChannels()

std::vector< std::vector<uint8_t> > Muon::nsw::NSWPadTriggerL1a::getTdsChannels ( const std::vector< std::vector< uint8_t > > &  hits,
const Constants::ArrayOfPfebChannels mapPadTriggerToTds 
) const
private

◆ getTdsToPadTrigger()

static uint8_t Muon::nsw::NSWPadTriggerL1a::getTdsToPadTrigger ( const size_t  pfeb,
const uint8_t  tdschan,
const std::string &  size 
)
inlinestatic

Definition at line 318 of file NSWPadTriggerL1a.h.

320  {
321  const auto& chans = (size == "S") ?
322  m_mapPadTriggerToTdsS.at(pfeb) :
323  m_mapPadTriggerToTdsL.at(pfeb);
324  return std::distance(chans.begin(), std::find(chans.begin(), chans.end(), tdschan));
325  }

◆ getTriggerBandIds()

const std::vector<uint32_t>& Muon::nsw::NSWPadTriggerL1a::getTriggerBandIds ( ) const
inline

Definition at line 165 of file NSWPadTriggerL1a.h.

165 { return m_trigger_bandid; };

◆ getTriggerPhiIds()

const std::vector<uint32_t>& Muon::nsw::NSWPadTriggerL1a::getTriggerPhiIds ( ) const
inline

Definition at line 166 of file NSWPadTriggerL1a.h.

166 { return m_trigger_phiid; };

◆ getTriggerRelBcids()

const std::vector<uint32_t>& Muon::nsw::NSWPadTriggerL1a::getTriggerRelBcids ( ) const
inline

Definition at line 167 of file NSWPadTriggerL1a.h.

167 { return m_trigger_relbcid; };

◆ isA()

static bool Muon::nsw::NSWPadTriggerL1a::isA ( const uint32_t  sourceid)
inlinestatic

Definition at line 210 of file NSWPadTriggerL1a.h.

210  {
211  return static_cast<eformat::SubDetector>((sourceid >> 16) & 0xff)
212  == eformat::MUON_STGC_ENDCAP_A_SIDE;
213  }

◆ isC()

static bool Muon::nsw::NSWPadTriggerL1a::isC ( const uint32_t  sourceid)
inlinestatic

Definition at line 218 of file NSWPadTriggerL1a.h.

218  {
219  return not isA(sourceid);
220  }

◆ isLarge()

static bool Muon::nsw::NSWPadTriggerL1a::isLarge ( const uint32_t  sec)
inlinestatic

Definition at line 196 of file NSWPadTriggerL1a.h.

196  {
197  return sec % 2 == 0;
198  }

◆ isNullPayload()

bool Muon::nsw::NSWPadTriggerL1a::isNullPayload ( const std::vector< uint32_t > &  words) const
private

◆ isSmall()

static bool Muon::nsw::NSWPadTriggerL1a::isSmall ( const uint32_t  sec)
inlinestatic

Definition at line 203 of file NSWPadTriggerL1a.h.

203  {
204  return not isLarge(sec);
205  }

◆ lastValidByteIndex()

uint32_t Muon::nsw::NSWPadTriggerL1a::lastValidByteIndex ( const std::vector< uint32_t > &  words) const
private

◆ layer()

static uint32_t Muon::nsw::NSWPadTriggerL1a::layer ( const uint32_t  pfeb)
inlinestatic

Definition at line 232 of file NSWPadTriggerL1a.h.

232  {
233  return pfeb % Constants::NLAYERS;
234  }

◆ nwords()

unsigned int Muon::nsw::NSWTriggerElink::nwords ( ) const
inlineinherited

Definition at line 55 of file NSWTriggerElink.h.

55 {return m_wordCount;}; //self counted or expected in case it will be possible

◆ nwordsFlx()

unsigned int Muon::nsw::NSWTriggerElink::nwordsFlx ( ) const
inlineinherited

Definition at line 56 of file NSWTriggerElink.h.

56 {return m_wordCountFlx;}; //reading from packet felix header

◆ offlineChannelNumber()

static uint32_t Muon::nsw::NSWPadTriggerL1a::offlineChannelNumber ( const uint32_t  sec,
const uint32_t  pfeb,
const uint32_t  vmm,
const uint32_t  vmmchan 
)
inlinestatic

Definition at line 274 of file NSWPadTriggerL1a.h.

277  {
278  static const Muon::nsw::MapperSTG mapper;
279  return mapper.channel_number(Muon::nsw::OFFLINE_CHANNEL_TYPE_PAD, isLarge(sec), radius(pfeb), layer(pfeb), vmm, vmmchan);
280  }

◆ offlineGasgap()

static uint32_t Muon::nsw::NSWPadTriggerL1a::offlineGasgap ( const uint32_t  pfeb)
inlinestatic

Definition at line 260 of file NSWPadTriggerL1a.h.

260  {
261  return quadlayer(layer(pfeb)) + 1;
262  }

◆ offlineMultilayer()

static uint32_t Muon::nsw::NSWPadTriggerL1a::offlineMultilayer ( const uint32_t  pfeb)
inlinestatic

Definition at line 267 of file NSWPadTriggerL1a.h.

267  {
268  return quad(layer(pfeb)) + 1;
269  }

◆ offlineStationAbsEta()

static uint32_t Muon::nsw::NSWPadTriggerL1a::offlineStationAbsEta ( const uint32_t  pfeb)
inlinestatic

Definition at line 285 of file NSWPadTriggerL1a.h.

285  {
286  return radius(pfeb) + 1;
287  }

◆ offlineStationName()

static std::string Muon::nsw::NSWPadTriggerL1a::offlineStationName ( const uint32_t  sec)
inlinestatic

Definition at line 299 of file NSWPadTriggerL1a.h.

299  {
300  return isLarge(sec) ? "STL" : "STS";
301  }

◆ offlineStationPhi()

static uint32_t Muon::nsw::NSWPadTriggerL1a::offlineStationPhi ( const uint32_t  sourceid)
inlinestatic

Definition at line 292 of file NSWPadTriggerL1a.h.

292  {
293  return sector(sourceid) / 2 + 1;
294  }

◆ quad()

static uint32_t Muon::nsw::NSWPadTriggerL1a::quad ( const uint32_t  pfeb)
inlinestatic

Definition at line 246 of file NSWPadTriggerL1a.h.

246  {
247  return layer(pfeb) / Constants::NLAYERS_PER_QUAD;
248  }

◆ quadlayer()

static uint32_t Muon::nsw::NSWPadTriggerL1a::quadlayer ( const uint32_t  pfeb)
inlinestatic

Definition at line 253 of file NSWPadTriggerL1a.h.

253  {
254  return layer(pfeb) % Constants::NLAYERS_PER_QUAD;
255  }

◆ radius()

static uint32_t Muon::nsw::NSWPadTriggerL1a::radius ( const uint32_t  pfeb)
inlinestatic

Definition at line 225 of file NSWPadTriggerL1a.h.

225  {
226  return pfeb / Constants::NLAYERS;
227  }

◆ roundUpIfOdd()

uint32_t Muon::nsw::NSWPadTriggerL1a::roundUpIfOdd ( const uint32_t  nbytes) const
private

◆ sector()

static uint32_t Muon::nsw::NSWPadTriggerL1a::sector ( const uint32_t  sourceid)
inlinestatic

Definition at line 239 of file NSWPadTriggerL1a.h.

239  {
240  return sourceid & 0xf;
241  }

◆ status()

unsigned int Muon::nsw::NSWTriggerElink::status ( ) const
inlineinherited

Definition at line 57 of file NSWTriggerElink.h.

57 {return m_packet_status;}; //felix status

◆ suspect()

bool Muon::nsw::NSWTriggerElink::suspect ( ) const
inlineinherited

Definition at line 58 of file NSWTriggerElink.h.

58 {return m_packet_sus;}; //elink decoded but with triggering suspects

Member Data Documentation

◆ m_bcid_multiplicity

std::vector<uint32_t> Muon::nsw::NSWPadTriggerL1a::m_bcid_multiplicity {}
private

Definition at line 511 of file NSWPadTriggerL1a.h.

◆ m_bcid_multzero

std::vector<uint32_t> Muon::nsw::NSWPadTriggerL1a::m_bcid_multzero {}
private

Definition at line 510 of file NSWPadTriggerL1a.h.

◆ m_bcid_n

uint32_t Muon::nsw::NSWPadTriggerL1a::m_bcid_n {0}
private

Definition at line 495 of file NSWPadTriggerL1a.h.

◆ m_bcid_rel

std::vector<uint32_t> Muon::nsw::NSWPadTriggerL1a::m_bcid_rel {}
private

Definition at line 508 of file NSWPadTriggerL1a.h.

◆ m_bcid_status

std::vector<uint32_t> Muon::nsw::NSWPadTriggerL1a::m_bcid_status {}
private

Definition at line 509 of file NSWPadTriggerL1a.h.

◆ m_decoded

DecodedData Muon::nsw::NSWPadTriggerL1a::m_decoded
private

Definition at line 373 of file NSWPadTriggerL1a.h.

◆ m_elinkId

std::shared_ptr<Muon::nsw::NSWResourceId> Muon::nsw::NSWTriggerElink::m_elinkId
protectedinherited

Definition at line 73 of file NSWTriggerElink.h.

◆ m_elinkWord

uint32_t Muon::nsw::NSWTriggerElink::m_elinkWord {}
protectedinherited

Definition at line 72 of file NSWTriggerElink.h.

◆ m_hasOrbit

bool Muon::nsw::NSWPadTriggerL1a::m_hasOrbit {true}
private

Definition at line 516 of file NSWPadTriggerL1a.h.

◆ m_hit_n

uint32_t Muon::nsw::NSWPadTriggerL1a::m_hit_n {0}
private

Definition at line 492 of file NSWPadTriggerL1a.h.

◆ m_hit_padchannel

std::vector<uint32_t> Muon::nsw::NSWPadTriggerL1a::m_hit_padchannel {}
private

Definition at line 501 of file NSWPadTriggerL1a.h.

◆ m_hit_pfeb

std::vector<uint32_t> Muon::nsw::NSWPadTriggerL1a::m_hit_pfeb {}
private

Definition at line 497 of file NSWPadTriggerL1a.h.

◆ m_hit_relbcid

std::vector<uint32_t> Muon::nsw::NSWPadTriggerL1a::m_hit_relbcid {}
private

Definition at line 496 of file NSWPadTriggerL1a.h.

◆ m_hit_tdschannel

std::vector<uint32_t> Muon::nsw::NSWPadTriggerL1a::m_hit_tdschannel {}
private

Definition at line 498 of file NSWPadTriggerL1a.h.

◆ m_hit_vmm

std::vector<uint32_t> Muon::nsw::NSWPadTriggerL1a::m_hit_vmm {}
private

Definition at line 500 of file NSWPadTriggerL1a.h.

◆ m_hit_vmmchannel

std::vector<uint32_t> Muon::nsw::NSWPadTriggerL1a::m_hit_vmmchannel {}
private

Definition at line 499 of file NSWPadTriggerL1a.h.

◆ m_mapPadTriggerToTdsL

constexpr Constants::ArrayOfPfebChannels Muon::nsw::NSWPadTriggerL1a::m_mapPadTriggerToTdsL
staticconstexprprivate

Definition at line 535 of file NSWPadTriggerL1a.h.

◆ m_mapPadTriggerToTdsS

constexpr Constants::ArrayOfPfebChannels Muon::nsw::NSWPadTriggerL1a::m_mapPadTriggerToTdsS
staticconstexprprivate

Definition at line 729 of file NSWPadTriggerL1a.h.

◆ m_numberOfChannelsL

constexpr Constants::ArrayOfPfebs Muon::nsw::NSWPadTriggerL1a::m_numberOfChannelsL
staticconstexprprivate
Initial value:
= {{
102, 96, 96, 104, 96, 96, 91, 96,
56, 56, 75, 75, 56, 56, 56, 56,
60, 60, 70, 70, 52, 52, 56, 56,
}}

Definition at line 521 of file NSWPadTriggerL1a.h.

◆ m_numberOfChannelsS

constexpr Constants::ArrayOfPfebs Muon::nsw::NSWPadTriggerL1a::m_numberOfChannelsS
staticconstexprprivate
Initial value:
= {{
68, 68, 72, 72, 68, 68, 51, 51,
48, 48, 45, 45, 30, 30, 45, 45,
38, 39, 42, 40, 24, 24, 38, 39,
}}

Definition at line 526 of file NSWPadTriggerL1a.h.

◆ m_packet_status

unsigned int Muon::nsw::NSWTriggerElink::m_packet_status {}
protectedinherited

Definition at line 68 of file NSWTriggerElink.h.

◆ m_packet_sus

bool Muon::nsw::NSWTriggerElink::m_packet_sus {}
protectedinherited

Definition at line 69 of file NSWTriggerElink.h.

◆ m_pfeb_addr

std::vector<uint32_t> Muon::nsw::NSWPadTriggerL1a::m_pfeb_addr {}
private

Definition at line 502 of file NSWPadTriggerL1a.h.

◆ m_pfeb_disconnected

std::vector<uint32_t> Muon::nsw::NSWPadTriggerL1a::m_pfeb_disconnected {}
private

Definition at line 504 of file NSWPadTriggerL1a.h.

◆ m_pfeb_n

uint32_t Muon::nsw::NSWPadTriggerL1a::m_pfeb_n {0}
private

Definition at line 493 of file NSWPadTriggerL1a.h.

◆ m_pfeb_nchan

std::vector<uint32_t> Muon::nsw::NSWPadTriggerL1a::m_pfeb_nchan {}
private

Definition at line 503 of file NSWPadTriggerL1a.h.

◆ m_trigger_bandid

std::vector<uint32_t> Muon::nsw::NSWPadTriggerL1a::m_trigger_bandid {}
private

Definition at line 505 of file NSWPadTriggerL1a.h.

◆ m_trigger_n

uint32_t Muon::nsw::NSWPadTriggerL1a::m_trigger_n {0}
private

Definition at line 494 of file NSWPadTriggerL1a.h.

◆ m_trigger_phiid

std::vector<uint32_t> Muon::nsw::NSWPadTriggerL1a::m_trigger_phiid {}
private

Definition at line 506 of file NSWPadTriggerL1a.h.

◆ m_trigger_relbcid

std::vector<uint32_t> Muon::nsw::NSWPadTriggerL1a::m_trigger_relbcid {}
private

Definition at line 507 of file NSWPadTriggerL1a.h.

◆ m_wordCount

unsigned int Muon::nsw::NSWTriggerElink::m_wordCount {}
protectedinherited

Definition at line 66 of file NSWTriggerElink.h.

◆ m_wordCountFlx

unsigned int Muon::nsw::NSWTriggerElink::m_wordCountFlx {}
protectedinherited

Definition at line 67 of file NSWTriggerElink.h.


The documentation for this class was generated from the following file:
Muon::nsw::NSWPadTriggerL1a::DecodedData::secid
uint32_t secid
Definition: NSWPadTriggerL1a.h:357
Muon::nsw::NSWPadTriggerL1a::m_mapPadTriggerToTdsL
static constexpr Constants::ArrayOfPfebChannels m_mapPadTriggerToTdsL
Definition: NSWPadTriggerL1a.h:535
Muon::nsw::NSWPadTriggerL1a::DecodedData::status
uint32_t status
Definition: NSWPadTriggerL1a.h:366
Muon::nsw::NSWPadTriggerL1a::m_pfeb_nchan
std::vector< uint32_t > m_pfeb_nchan
Definition: NSWPadTriggerL1a.h:503
find
std::string find(const std::string &s)
return a remapped string
Definition: hcg.cxx:135
Muon::nsw::NSWPadTriggerL1a::m_hit_tdschannel
std::vector< uint32_t > m_hit_tdschannel
Definition: NSWPadTriggerL1a.h:498
Muon::nsw::NSWPadTriggerL1a::m_mapPadTriggerToTdsS
static constexpr Constants::ArrayOfPfebChannels m_mapPadTriggerToTdsS
Definition: NSWPadTriggerL1a.h:729
Muon::nsw::NSWPadTriggerL1a::isLarge
static bool isLarge(const uint32_t sec)
Definition: NSWPadTriggerL1a.h:196
Muon::nsw::MapperSTG::channel_number
uint16_t channel_number(uint8_t channel_type, uint8_t sector_type, uint8_t feb_radius, uint8_t layer, uint16_t vmm, uint16_t vmm_chan) const
Definition: MapperSTG.cxx:9
Muon::nsw::NSWPadTriggerL1a::isA
static bool isA(const uint32_t sourceid)
Definition: NSWPadTriggerL1a.h:210
Muon::nsw::NSWPadTriggerL1a::m_hit_vmm
std::vector< uint32_t > m_hit_vmm
Definition: NSWPadTriggerL1a.h:500
Muon::nsw::NSWPadTriggerL1a::m_bcid_rel
std::vector< uint32_t > m_bcid_rel
Definition: NSWPadTriggerL1a.h:508
Muon::nsw::NSWPadTriggerL1a::sector
static uint32_t sector(const uint32_t sourceid)
Definition: NSWPadTriggerL1a.h:239
Muon::nsw::NSWPadTriggerL1a::m_bcid_multzero
std::vector< uint32_t > m_bcid_multzero
Definition: NSWPadTriggerL1a.h:510
Muon::nsw::NSWPadTriggerL1a::m_hit_relbcid
std::vector< uint32_t > m_hit_relbcid
Definition: NSWPadTriggerL1a.h:496
Muon::nsw::NSWPadTriggerL1a::m_bcid_n
uint32_t m_bcid_n
Definition: NSWPadTriggerL1a.h:495
Muon::nsw::NSWPadTriggerL1a::quad
static uint32_t quad(const uint32_t pfeb)
Definition: NSWPadTriggerL1a.h:246
Muon::nsw::NSWPadTriggerL1a::m_pfeb_disconnected
std::vector< uint32_t > m_pfeb_disconnected
Definition: NSWPadTriggerL1a.h:504
Muon::nsw::NSWPadTriggerL1a::DecodedData::orbit1
uint32_t orbit1
Definition: NSWPadTriggerL1a.h:365
Muon::nsw::NSWPadTriggerL1a::DecodedData::spare
uint32_t spare
Definition: NSWPadTriggerL1a.h:362
Muon::nsw::OFFLINE_CHANNEL_TYPE_PAD
@ OFFLINE_CHANNEL_TYPE_PAD
Definition: NSWDecodeHelper.h:19
Muon::nsw::NSWPadTriggerL1a::DecodedData::ec
uint32_t ec
Definition: NSWPadTriggerL1a.h:358
Muon::nsw::NSWPadTriggerL1a::quadlayer
static uint32_t quadlayer(const uint32_t pfeb)
Definition: NSWPadTriggerL1a.h:253
python.setupRTTAlg.size
int size
Definition: setupRTTAlg.py:39
Muon::nsw::NSWPadTriggerL1a::layer
static uint32_t layer(const uint32_t pfeb)
Definition: NSWPadTriggerL1a.h:232
Muon::nsw::NSWPadTriggerL1a::m_trigger_relbcid
std::vector< uint32_t > m_trigger_relbcid
Definition: NSWPadTriggerL1a.h:507
Muon::nsw::NSWPadTriggerL1a::radius
static uint32_t radius(const uint32_t pfeb)
Definition: NSWPadTriggerL1a.h:225
Muon::nsw::NSWPadTriggerL1a::m_hit_n
uint32_t m_hit_n
Definition: NSWPadTriggerL1a.h:492
ReadCellNoiseFromCool.chan
chan
Definition: ReadCellNoiseFromCool.py:52
Muon::nsw::NSWPadTriggerL1a::DecodedData::l1id
uint32_t l1id
Definition: NSWPadTriggerL1a.h:363
Muon::nsw::NSWPadTriggerL1a::DecodedData::fragid
uint32_t fragid
Definition: NSWPadTriggerL1a.h:356
Muon::nsw::NSWPadTriggerL1a::m_trigger_bandid
std::vector< uint32_t > m_trigger_bandid
Definition: NSWPadTriggerL1a.h:505
Muon::nsw::NSWPadTriggerL1a::m_hit_pfeb
std::vector< uint32_t > m_hit_pfeb
Definition: NSWPadTriggerL1a.h:497
Muon::nsw::NSWPadTriggerL1a::m_trigger_n
uint32_t m_trigger_n
Definition: NSWPadTriggerL1a.h:494
Muon::nsw::NSWPadTriggerL1a::DecodedData::orbitid
uint32_t orbitid
Definition: NSWPadTriggerL1a.h:364
Muon::nsw::NSWPadTriggerL1a::DecodedData::flags
uint32_t flags
Definition: NSWPadTriggerL1a.h:359
Muon::nsw::NSWPadTriggerL1a::m_bcid_status
std::vector< uint32_t > m_bcid_status
Definition: NSWPadTriggerL1a.h:509
Muon::nsw::NSWPadTriggerL1a::m_hit_padchannel
std::vector< uint32_t > m_hit_padchannel
Definition: NSWPadTriggerL1a.h:501
Muon::nsw::Constants::NLAYERS_PER_QUAD
constexpr uint32_t NLAYERS_PER_QUAD
Definition: NSWPadTriggerL1a.h:37
Muon::nsw::NSWPadTriggerL1a::m_pfeb_addr
std::vector< uint32_t > m_pfeb_addr
Definition: NSWPadTriggerL1a.h:502
Muon::nsw::NSWPadTriggerL1a::m_pfeb_n
uint32_t m_pfeb_n
Definition: NSWPadTriggerL1a.h:493
Muon::nsw::NSWPadTriggerL1a::m_hit_vmmchannel
std::vector< uint32_t > m_hit_vmmchannel
Definition: NSWPadTriggerL1a.h:499
Muon::nsw::Constants::NLAYERS
constexpr uint32_t NLAYERS
Definition: NSWPadTriggerL1a.h:36
Muon::nsw::NSWPadTriggerL1a::m_bcid_multiplicity
std::vector< uint32_t > m_bcid_multiplicity
Definition: NSWPadTriggerL1a.h:511
Muon::nsw::NSWPadTriggerL1a::m_decoded
DecodedData m_decoded
Definition: NSWPadTriggerL1a.h:373
Amg::distance
float distance(const Amg::Vector3D &p1, const Amg::Vector3D &p2)
calculates the distance between two point in 3D space
Definition: GeoPrimitivesHelpers.h:54
Muon::nsw::NSWPadTriggerL1a::DecodedData::bcid
uint32_t bcid
Definition: NSWPadTriggerL1a.h:360
python.LArCondContChannels.chans
list chans
Definition: LArCondContChannels.py:638
Muon::nsw::NSWPadTriggerL1a::m_trigger_phiid
std::vector< uint32_t > m_trigger_phiid
Definition: NSWPadTriggerL1a.h:506
Muon::nsw::NSWPadTriggerL1a::DecodedData::orbit
uint32_t orbit
Definition: NSWPadTriggerL1a.h:361
Muon::nsw::MapperSTG
Definition: MapperSTG.h:18