Converts scope mode like digis into virgin raw like digis by: -extracting the frame payload, -reordering to physical order and -merging the DetSets indexed by FedKey to DetSets indexed by DetId. More...
#include <SiStripSpyDigiConverter.h>
Public Types | |
typedef edm::DetSetVector < SiStripRawDigi > | DSVRawDigis |
Public Member Functions | |
SpyDigiConverter () | |
~SpyDigiConverter () | |
Static Public Member Functions | |
static std::auto_ptr< DSVRawDigis > | extractPayloadDigis (const DSVRawDigis *inputScopeDigis, std::vector< uint32_t > *pAPVAddresses, const bool discardDigisWithAPVAddrErr, const sistrip::SpyUtilities::FrameQuality &aQuality, const uint16_t expectedPos) |
Extract frames from the scope digis. More... | |
static std::auto_ptr< DSVRawDigis > | mergeModuleChannels (const DSVRawDigis *inputPhysicalOrderChannelDigis, const SiStripFedCabling &cabling) |
static std::auto_ptr< DSVRawDigis > | reorderDigis (const DSVRawDigis *inputPayloadDigis) |
Private Types | |
typedef DSVRawDigis::detset | DetSetRawDigis |
Static Private Member Functions | |
static void | processFED (const uint16_t aPreviousFedId, const bool discardDigisWithAPVAddrErr, std::vector< uint32_t > *pAPVAddresses, std::vector< DetSetRawDigis > &outputData, std::vector< uint16_t > &aAddrVec, std::vector< uint16_t > &aHeaderBitVec, std::vector< DSVRawDigis::const_iterator > &aFedScopeDigis) |
Converts scope mode like digis into virgin raw like digis by: -extracting the frame payload, -reordering to physical order and -merging the DetSets indexed by FedKey to DetSets indexed by DetId.
Definition at line 25 of file SiStripSpyDigiConverter.h.
|
private |
Definition at line 53 of file SiStripSpyDigiConverter.h.
Definition at line 28 of file SiStripSpyDigiConverter.h.
|
inline |
Definition at line 31 of file SiStripSpyDigiConverter.h.
|
inline |
Definition at line 32 of file SiStripSpyDigiConverter.h.
|
static |
Extract frames from the scope digis.
If pAPVAddress is set, the map is filled with a map from FedKey to APVAddress. minAllowedRange is the min allowed range of digis when determine the threshold.
Definition at line 24 of file SiStripSpyDigiConverter.cc.
References sistrip::SpyUtilities::Frame::apvAddress, edm::DetSetVector< T >::begin(), edm::DetSetVector< T >::end(), sistrip::SpyUtilities::extractFrameInfo(), sistrip::FED_ID_MAX, sistrip::FEDCH_PER_FED, sistrip::SpyUtilities::Frame::firstHeaderBit, sistrip::SpyUtilities::isValid(), sistrip::SpyUtilities::print(), processFED(), edm::DetSetVector< T >::size(), and sistrip::SPY_SAMPLES_PER_CHANNEL.
Referenced by sistrip::SpyDigiConverterModule::produce().
|
static |
Definition at line 209 of file SiStripSpyDigiConverter.cc.
References sistrip::DetSetVectorFiller< T, dsvIsSparse >::addItem(), SiStripFedCabling::connections(), sistrip::DetSetVectorFiller< T, dsvIsSparse >::createDetSetVector(), edm::DetSetVector< T >::end(), sistrip::FED_ID_MAX, sistrip::FED_ID_MIN, sistrip::FEDCH_PER_FED, SiStripFedKey::fedIndex(), SiStripFedCabling::feds(), edm::DetSetVector< T >::find(), sistrip::invalid32_, sistrip::DetSetVectorFiller< T, dsvIsSparse >::newChannel(), and sistrip::STRIPS_PER_FEDCH.
Referenced by sistrip::SpyDigiConverterModule::produce().
|
staticprivate |
Definition at line 120 of file SiStripSpyDigiConverter.cc.
References filterCSVwithJSON::copy, sistrip::FEDCH_PER_FED, sistrip::SpyUtilities::findMajorityValue(), and sistrip::STRIPS_PER_FEDCH.
Referenced by extractPayloadDigis().
|
static |
Definition at line 184 of file SiStripSpyDigiConverter.cc.
References edm::DetSetVector< T >::begin(), edm::DetSetVector< T >::end(), sistrip::FEDStripOrdering::physicalOrderForStripInChannel(), edm::DetSetVector< T >::size(), and sistrip::STRIPS_PER_FEDCH.
Referenced by sistrip::SpyDigiConverterModule::produce().