1 #ifndef EventFilter_CSCRawToDigi_CSCCFEBData_h 2 #define EventFilter_CSCRawToDigi_CSCCFEBData_h 25 unsigned adcCounts(
unsigned layer,
unsigned channel,
unsigned timeBin)
const;
26 unsigned adcOverflow(
unsigned layer,
unsigned channel,
unsigned timeBin)
const;
27 unsigned controllerData(
unsigned uglay,
unsigned ugchan,
unsigned timeBin)
const;
29 unsigned errorstat(
unsigned layer,
unsigned channel,
unsigned timeBin)
const;
36 void digis(uint32_t idlayer, std::vector<CSCStripDigi> &
result)
const;
38 std::vector<CSCStripDigi>
digis(
unsigned idlayer)
const;
40 std::vector<std::vector<CSCStripDigi> >
stripDigis();
CSCCFEBStatusDigi statusDigi() const
returns one status digi per cfeb
unsigned sizeInWords() const
unsigned controllerData(unsigned uglay, unsigned ugchan, unsigned timeBin) const
void add(const CSCStripDigi &, int layer)
void setL1A(unsigned l1a)
unsigned adcCounts(unsigned layer, unsigned channel, unsigned timeBin) const
std::vector< std::pair< int, bool > > theSliceStarts
constexpr std::array< uint8_t, layerIndexSize > layer
std::vector< std::vector< CSCStripDigi > > stripDigis()
deprecated. Use the above method.
unsigned boardNumber() const
unsigned overlappedSampleFlag(unsigned layer, unsigned channel, unsigned timeBin) const
std::vector< uint16_t > bWords
friend std::ostream & operator<<(std::ostream &os, const CSCCFEBData &)
unsigned errorstat(unsigned layer, unsigned channel, unsigned timeBin) const
unsigned adcOverflow(unsigned layer, unsigned channel, unsigned timeBin) const
unsigned nTimeSamples() const
void digis(uint32_t idlayer, std::vector< CSCStripDigi > &result) const
faster way to get to digis
const CSCCFEBTimeSlice * timeSlice(unsigned i) const
count from 0. User should check if it's a bad slice
uint16_t theFormatVersion
CSCCFEBData(unsigned boardNumber, const uint16_t *buf, uint16_t theFormatVersion=2005, bool fDCFEB=false)
read from an existing data stream.
bool check() const
makes sure each time slice has a trailer
void setBoardNumber(int cfeb)
unsigned theNumberOfSamples