CMS 3D CMS Logo

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

#include <SiStripRawToDigiUnpacker.h>

Classes

class  Registry
 private class to register start and end index of digis in a collection More...
 

Public Types

typedef edm::DetSetVector
< SiStripDigi
Digis
 
typedef edm::DetSetVector
< SiStripRawDigi
RawDigis
 

Public Member Functions

void createDigis (const SiStripFedCabling &, const FEDRawDataCollection &, SiStripEventSummary &, RawDigis &scope_mode, RawDigis &virgin_raw, RawDigis &proc_raw, Digis &zero_suppr, DetIdCollection &, RawDigis &common_mode)
 creates digis More...
 
void doAPVEmulatorCheck (bool)
 
void doFullCorruptBufferChecks (bool)
 
void extractCm (bool)
 
void legacy (bool)
 
void locateStartOfFedBuffer (const uint16_t &fed_id, const FEDRawData &input, FEDRawData &output)
 Removes any data appended prior to FED buffer and reorders 32-bit words if swapped. More...
 
void quiet (bool)
 verbosity More...
 
 RawToDigiUnpacker (int16_t appended_bytes, int16_t fed_buffer_dump_freq, int16_t fed_event_dump_freq, int16_t trigger_fed_id, bool using_fed_key, bool unpack_bad_channels, bool mark_missing_feds, const uint32_t errorThreshold)
 constructor More...
 
void triggerFed (const FEDRawDataCollection &, SiStripEventSummary &, const uint32_t &event)
 trigger info More...
 
void useDaqRegister (bool)
 EventSummary update request -> not yet implemented for FEDBuffer class. More...
 
 ~RawToDigiUnpacker ()
 default constructor More...
 

Private Member Functions

void cleanupWorkVectors ()
 method to clear registries and digi collections More...
 
sistrip::FedBufferFormat fedBufferFormat (const uint16_t &register_value)
 returns buffer format More...
 
sistrip::FedReadoutMode fedReadoutMode (const uint16_t &register_value)
 returns buffer readout mode More...
 
void handleException (std::string method_name, std::string extra_info="")
 catches all possible exceptions and rethrows them as cms::Exceptions More...
 
void physicalOrder (uint16_t &readout_order, uint16_t &physical_order)
 order of strips More...
 
 RawToDigiUnpacker ()
 private default constructor More...
 
void readoutOrder (uint16_t &physical_order, uint16_t &readout_order)
 order of strips More...
 
void update (RawDigis &scope_mode, RawDigis &virgin_raw, RawDigis &proc_raw, Digis &zero_suppr, RawDigis &common_mode)
 fill DetSetVectors using registries More...
 
void updateEventSummary (const sistrip::FEDBuffer &, SiStripEventSummary &)
 sets the SiStripEventSummary -> not yet implemented for FEDBuffer class More...
 

Static Private Member Functions

static void dumpRawData (uint16_t fed_id, const FEDRawData &, std::stringstream &)
 dumps raw data to stdout (NB: payload is byte-swapped,headers/trailer are not). More...
 

Private Attributes

std::vector< SiStripRawDigicm_work_digis_
 
std::vector< Registrycm_work_registry_
 
bool doAPVEmulatorCheck_
 
bool doFullCorruptBufferChecks_
 
uint32_t errorThreshold_
 
uint32_t event_
 other values More...
 
bool extractCm_
 
int16_t fedBufferDumpFreq_
 
int16_t fedEventDumpFreq_
 
bool first_
 
int16_t headerBytes_
 configurables More...
 
bool legacy_
 
bool markMissingFeds_
 
bool once_
 
std::vector< SiStripRawDigiproc_work_digis_
 
std::vector< Registryproc_work_registry_
 
bool quiet_
 
std::vector< SiStripRawDigiscope_work_digis_
 
std::vector< Registryscope_work_registry_
 
int16_t triggerFedId_
 
bool unpackBadChannels_
 
bool useDaqRegister_
 
bool useFedKey_
 
std::vector< SiStripRawDigivirgin_work_digis_
 
std::vector< Registryvirgin_work_registry_
 
std::vector< SiStripDigizs_work_digis_
 digi collections More...
 
std::vector< Registryzs_work_registry_
 registries More...
 

Friends

class RawToClustersLazyUnpacker
 

Detailed Description

Definition at line 29 of file SiStripRawToDigiUnpacker.h.

Member Typedef Documentation

Definition at line 35 of file SiStripRawToDigiUnpacker.h.

Definition at line 36 of file SiStripRawToDigiUnpacker.h.

Constructor & Destructor Documentation

sistrip::RawToDigiUnpacker::RawToDigiUnpacker ( int16_t  appended_bytes,
int16_t  fed_buffer_dump_freq,
int16_t  fed_event_dump_freq,
int16_t  trigger_fed_id,
bool  using_fed_key,
bool  unpack_bad_channels,
bool  mark_missing_feds,
const uint32_t  errorThreshold 
)

constructor

Definition at line 24 of file SiStripRawToDigiUnpacker.cc.

sistrip::RawToDigiUnpacker::~RawToDigiUnpacker ( )

default constructor

Definition at line 53 of file SiStripRawToDigiUnpacker.cc.

sistrip::RawToDigiUnpacker::RawToDigiUnpacker ( )
private

private default constructor

Member Function Documentation

void sistrip::RawToDigiUnpacker::cleanupWorkVectors ( )
private

method to clear registries and digi collections

Definition at line 852 of file SiStripRawToDigiUnpacker.cc.

void sistrip::RawToDigiUnpacker::createDigis ( const SiStripFedCabling cabling,
const FEDRawDataCollection buffers,
SiStripEventSummary summary,
RawDigis scope_mode,
RawDigis virgin_raw,
RawDigis proc_raw,
Digis zero_suppr,
DetIdCollection detids,
RawDigis common_mode 
)

creates digis

extract readout mode

FED channel

create unpacker

unpack -> add check to make sure strip < nstrips && strip > last strip......

create unpacker

unpack -> add check to make sure strip < nstrips && strip > last strip......

create unpacker

unpack -> add check to make sure strip < nstrips && strip > last strip......

create unpacker

unpack -> add check to make sure strip < nstrips && strip > last strip......

create unpacker and unpack -> add check to make sure strip < nstrips && strip > last strip......

create unpacker

unpack -> add check to make sure strip < nstrips && strip > last strip......

create unpacker

unpack -> add check to make sure strip < nstrips && strip > last strip......

create unpacker

unpack -> add check to make sure strip < nstrips && strip > last strip......

Definition at line 68 of file SiStripRawToDigiUnpacker.cc.

void sistrip::RawToDigiUnpacker::doAPVEmulatorCheck ( bool  do_APVEmulator_check)
inline

Definition at line 184 of file SiStripRawToDigiUnpacker.h.

void sistrip::RawToDigiUnpacker::doFullCorruptBufferChecks ( bool  do_full_corrupt_buffer_checks)
inline

Definition at line 182 of file SiStripRawToDigiUnpacker.h.

void sistrip::RawToDigiUnpacker::dumpRawData ( uint16_t  fed_id,
const FEDRawData buffer,
std::stringstream &  ss 
)
staticprivate

dumps raw data to stdout (NB: payload is byte-swapped,headers/trailer are not).

Definition at line 1159 of file SiStripRawToDigiUnpacker.cc.

void sistrip::RawToDigiUnpacker::extractCm ( bool  extract_cm)
inline

Definition at line 180 of file SiStripRawToDigiUnpacker.h.

sistrip::FedBufferFormat sistrip::RawToDigiUnpacker::fedBufferFormat ( const uint16_t &  register_value)
inlineprivate

returns buffer format

Definition at line 163 of file SiStripRawToDigiUnpacker.h.

sistrip::FedReadoutMode sistrip::RawToDigiUnpacker::fedReadoutMode ( const uint16_t &  register_value)
inlineprivate

returns buffer readout mode

Definition at line 171 of file SiStripRawToDigiUnpacker.h.

void sistrip::RawToDigiUnpacker::handleException ( std::string  method_name,
std::string  extra_info = "" 
)
private

catches all possible exceptions and rethrows them as cms::Exceptions

Definition at line 1235 of file SiStripRawToDigiUnpacker.cc.

void sistrip::RawToDigiUnpacker::legacy ( bool  legacy)
inline

Definition at line 186 of file SiStripRawToDigiUnpacker.h.

void sistrip::RawToDigiUnpacker::locateStartOfFedBuffer ( const uint16_t &  fed_id,
const FEDRawData input,
FEDRawData output 
)

Removes any data appended prior to FED buffer and reorders 32-bit words if swapped.

Definition at line 981 of file SiStripRawToDigiUnpacker.cc.

void sistrip::RawToDigiUnpacker::physicalOrder ( uint16_t &  readout_order,
uint16_t &  physical_order 
)
inlineprivate

order of strips

Definition at line 158 of file SiStripRawToDigiUnpacker.h.

void sistrip::RawToDigiUnpacker::quiet ( bool  quiet)
inline

verbosity

Definition at line 176 of file SiStripRawToDigiUnpacker.h.

void sistrip::RawToDigiUnpacker::readoutOrder ( uint16_t &  physical_order,
uint16_t &  readout_order 
)
inlineprivate

order of strips

Definition at line 153 of file SiStripRawToDigiUnpacker.h.

void sistrip::RawToDigiUnpacker::triggerFed ( const FEDRawDataCollection buffers,
SiStripEventSummary summary,
const uint32_t &  event 
)

trigger info

Definition at line 863 of file SiStripRawToDigiUnpacker.cc.

void sistrip::RawToDigiUnpacker::update ( RawDigis scope_mode,
RawDigis virgin_raw,
RawDigis proc_raw,
Digis zero_suppr,
RawDigis common_mode 
)
private

fill DetSetVectors using registries

Definition at line 586 of file SiStripRawToDigiUnpacker.cc.

Referenced by Vispa.Gui.ZoomableWidget.ZoomableWidget::setZoom().

void sistrip::RawToDigiUnpacker::updateEventSummary ( const sistrip::FEDBuffer fed,
SiStripEventSummary summary 
)
private

sets the SiStripEventSummary -> not yet implemented for FEDBuffer class

Definition at line 1123 of file SiStripRawToDigiUnpacker.cc.

void sistrip::RawToDigiUnpacker::useDaqRegister ( bool  use)
inline

EventSummary update request -> not yet implemented for FEDBuffer class.

Definition at line 178 of file SiStripRawToDigiUnpacker.h.

Friends And Related Function Documentation

friend class RawToClustersLazyUnpacker
friend

Definition at line 31 of file SiStripRawToDigiUnpacker.h.

Member Data Documentation

std::vector<SiStripRawDigi> sistrip::RawToDigiUnpacker::cm_work_digis_
private

Definition at line 148 of file SiStripRawToDigiUnpacker.h.

std::vector<Registry> sistrip::RawToDigiUnpacker::cm_work_registry_
private

Definition at line 141 of file SiStripRawToDigiUnpacker.h.

bool sistrip::RawToDigiUnpacker::doAPVEmulatorCheck_
private

Definition at line 132 of file SiStripRawToDigiUnpacker.h.

bool sistrip::RawToDigiUnpacker::doFullCorruptBufferChecks_
private

Definition at line 131 of file SiStripRawToDigiUnpacker.h.

uint32_t sistrip::RawToDigiUnpacker::errorThreshold_
private

Definition at line 134 of file SiStripRawToDigiUnpacker.h.

uint32_t sistrip::RawToDigiUnpacker::event_
private

other values

Definition at line 125 of file SiStripRawToDigiUnpacker.h.

bool sistrip::RawToDigiUnpacker::extractCm_
private

Definition at line 130 of file SiStripRawToDigiUnpacker.h.

int16_t sistrip::RawToDigiUnpacker::fedBufferDumpFreq_
private

Definition at line 117 of file SiStripRawToDigiUnpacker.h.

int16_t sistrip::RawToDigiUnpacker::fedEventDumpFreq_
private

Definition at line 118 of file SiStripRawToDigiUnpacker.h.

bool sistrip::RawToDigiUnpacker::first_
private

Definition at line 127 of file SiStripRawToDigiUnpacker.h.

int16_t sistrip::RawToDigiUnpacker::headerBytes_
private

configurables

Definition at line 116 of file SiStripRawToDigiUnpacker.h.

bool sistrip::RawToDigiUnpacker::legacy_
private

Definition at line 133 of file SiStripRawToDigiUnpacker.h.

bool sistrip::RawToDigiUnpacker::markMissingFeds_
private

Definition at line 122 of file SiStripRawToDigiUnpacker.h.

bool sistrip::RawToDigiUnpacker::once_
private

Definition at line 126 of file SiStripRawToDigiUnpacker.h.

std::vector<SiStripRawDigi> sistrip::RawToDigiUnpacker::proc_work_digis_
private

Definition at line 147 of file SiStripRawToDigiUnpacker.h.

std::vector<Registry> sistrip::RawToDigiUnpacker::proc_work_registry_
private

Definition at line 140 of file SiStripRawToDigiUnpacker.h.

bool sistrip::RawToDigiUnpacker::quiet_
private

Definition at line 129 of file SiStripRawToDigiUnpacker.h.

std::vector<SiStripRawDigi> sistrip::RawToDigiUnpacker::scope_work_digis_
private

Definition at line 146 of file SiStripRawToDigiUnpacker.h.

std::vector<Registry> sistrip::RawToDigiUnpacker::scope_work_registry_
private

Definition at line 139 of file SiStripRawToDigiUnpacker.h.

int16_t sistrip::RawToDigiUnpacker::triggerFedId_
private

Definition at line 119 of file SiStripRawToDigiUnpacker.h.

bool sistrip::RawToDigiUnpacker::unpackBadChannels_
private

Definition at line 121 of file SiStripRawToDigiUnpacker.h.

bool sistrip::RawToDigiUnpacker::useDaqRegister_
private

Definition at line 128 of file SiStripRawToDigiUnpacker.h.

bool sistrip::RawToDigiUnpacker::useFedKey_
private

Definition at line 120 of file SiStripRawToDigiUnpacker.h.

std::vector<SiStripRawDigi> sistrip::RawToDigiUnpacker::virgin_work_digis_
private

Definition at line 145 of file SiStripRawToDigiUnpacker.h.

std::vector<Registry> sistrip::RawToDigiUnpacker::virgin_work_registry_
private

Definition at line 138 of file SiStripRawToDigiUnpacker.h.

std::vector<SiStripDigi> sistrip::RawToDigiUnpacker::zs_work_digis_
private

digi collections

Definition at line 144 of file SiStripRawToDigiUnpacker.h.

std::vector<Registry> sistrip::RawToDigiUnpacker::zs_work_registry_
private

registries

Definition at line 137 of file SiStripRawToDigiUnpacker.h.