1 #ifndef StMeasurementDetSet_H 2 #define StMeasurementDetSet_H 26 #include <unordered_map> 32 #define COUT std::cout 34 #define COUT LogDebug("") 73 unsigned int id(
int i)
const {
return id_[
i]; }
127 std::vector<unsigned int>
id_;
179 bool empty(
int i)
const {
return detSet_[
i].empty_.load(std::memory_order_relaxed); }
237 if (det.ready_.compare_exchange_strong(expected,
ReadyState::kSetting, std::memory_order_acq_rel)) {
240 det.empty_.store(
false, std::memory_order_relaxed);
244 det.empty_.store(
true, std::memory_order_relaxed);
302 COUT <<
"VI detsets " <<
stat.totDet <<
',' <<
stat.detReady <<
',' <<
stat.detSet <<
',' <<
stat.detAct
323 unsigned int id(
int i)
const {
return id_[
i]; }
340 std::vector<unsigned int>
id_;
388 return &(
found->second);
395 found->second.insert(
found->second.end(), positions.begin(), positions.end());
433 unsigned int id(
int i)
const {
return id_[
i]; }
450 std::vector<unsigned int>
id_;
510 #endif // StMeasurementDetSet_H
edmNew::DetSet< Phase2TrackerCluster1D > Phase2DetSet
std::vector< std::pair< LocalPoint, LocalPoint > > BadFEDChannelPositions
edm::Handle< edmNew::DetSetVector< Phase2TrackerCluster1D > > & handle()
void setActiveThisEvent(int i, bool active)
Turn on/off the module for reconstruction for one events. This per-event flag is cleared by any call ...
const PixelDetSet & detSet(int i) const
auto const good
min quality of good
std::vector< std::vector< BadStripBlock > > badStripBlocks_
uint16_t firstStrip() const
PxMeasurementConditionSet(const PixelClusterParameterEstimator *cpe)
std::vector< bool > activeThisPeriod_
const PixelClusterParameterEstimator * theCPE
void setActive(int i, bool active)
Turn on/off the module for reconstruction, for the full run or lumi (using info from DB...
unsigned int id(int i) const
std::vector< DetSetHelper > detSet_
edm::Handle< edmNew::DetSetVector< Phase2TrackerCluster1D > > handle_
unsigned int id(int i) const
int find(unsigned int jd, int i=0) const
edm::Ref< edmNew::DetSetVector< SiPixelCluster >, SiPixelCluster > SiPixelClusterRef
unsigned int id(int i) const
StMeasurementDetSet(const StMeasurementConditionSet &cond)
void update(int i, int j)
std::vector< bool > stripDefined_
const PxMeasurementConditionSet * conditionSet_
void update(int i, const StripDetset &detSet)
bool maskBad128StripBlocks_
const StripClusterParameterEstimator * stripCPE() const
StripDetset::const_iterator new_const_iterator
data_type const * const_iterator
bool bad128Strip(int index, int strip) const
edm::Ref< edmNew::DetSetVector< Phase2TrackerCluster1D >, Phase2TrackerCluster1D > Phase2TrackerCluster1DRef
void defineStrip(int i, std::pair< unsigned int, unsigned int > range)
bool isActive(int i) const
std::atomic< ReadyState > ready_
const edm::Handle< edmNew::DetSetVector< Phase2TrackerCluster1D > > & handle() const
const bool stripDefined(int i) const
const SiStripRecHitMatcher * matcher() const
std::atomic< bool > empty_
std::vector< bool > empty_
bool isActiveThisPeriod(int i) const
uint16_t maxConsecutiveBad
edmNew::DetSet< SiStripCluster > StripDetset
std::vector< unsigned char > subId_
unsigned int id(int i) const
unsigned int id(int i) const
bool hasAny128StripBad(int i) const
const StripDetset & detSet(int i) const
const StMeasurementConditionSet * conditionSet_
bool isActive(int i) const
void setActiveThisEvent(int i, bool active)
Turn on/off the module for reconstruction for one events. This per-event flag is cleared by any call ...
SiStripCluster const & amplitudes() const
void setActive(int i, bool active)
Turn on/off the module for reconstruction, for the full run or lumi (using info from DB...
std::vector< BadStripBlock > & getBadStripBlocks(int i)
const edm::Handle< edmNew::DetSetVector< SiStripCluster > > & handle() const
edm::Handle< edmNew::DetSetVector< SiPixelCluster > > handle_
bool isActiveThisPeriod(int i) const
int totalStrips(int i) const
bool isActiveThisPeriod(int i) const
#define CMS_THREAD_GUARD(_var_)
std::vector< Phase2DetSet > detSet_
PxMeasurementDetSet(const PxMeasurementConditionSet &cond)
unsigned int id(int i) const
int find(unsigned int jd, int i=0) const
std::vector< uint32_t > theRawInactiveStripDetIds_
const std::vector< uint32_t > & rawInactiveStripDetIds() const
std::vector< unsigned int > id_
StMeasurementConditionSet(const SiStripRecHitMatcher *matcher, const StripClusterParameterEstimator *cpe)
void update(int i, const PixelDetSet &detSet)
void addBadFEDChannelPositions(int i, BadFEDChannelPositions &positions)
std::vector< int > totalStrips_
bool bad128Strip(int offset) const
note: index is 6*detector index + offset!
void resetOnDemandStrips()
const Phase2OTMeasurementConditionSet & conditions() const
std::vector< bool > hasAny128StripBad_
const StripClusterParameterEstimator * theCPE
int find(unsigned int jd, int i=0) const
void setActiveThisEvent(int i, bool active)
const ClusterParameterEstimator< Phase2TrackerCluster1D > * cpe() const
std::vector< uint32_t > & rawInactiveStripDetIds()
const StMeasurementConditionSet & conditions() const
void setMaskBad128StripBlocks(bool maskThem)
std::vector< bool > activeThisPeriod_
const BadFEDChannelPositions * getBadFEDChannelPositions(int i) const
std::vector< unsigned int > id_
bool isMasked(int i, const SiStripCluster &cluster) const
Item const & item(size_t cell) const
std::vector< unsigned int > id_
std::vector< bool > activeThisPeriod_
bool maskBad128StripBlocks() const
const BadStripCuts & badStripCuts(int i) const
BadStripBlock(const SiStripBadStrip::data &data)
void getDetSet(int i) const
const bool stripUpdated(int i) const
unsigned char subId(int i) const
edm::Handle< edmNew::DetSetVector< SiStripCluster > > handle_
std::vector< bool > bad128Strip_
std::vector< bool > activeThisEvent_
void setActiveThisEvent(bool active)
Pixel cluster – collection of neighboring pixels above threshold.
char data[epos_bytes_allocation]
BadStripCuts(uint32_t iMaxBad, uint32_t iMaxConsecutiveBad)
std::vector< bool > empty_
int find(unsigned int jd, int i=0) const
std::vector< bool > activeThisEvent_
std::vector< bool > activeThisEvent_
const ClusterParameterEstimator< Phase2TrackerCluster1D > * theCPE
const Phase2DetSet & detSet(int i) const
void setActiveThisEvent(bool active)
BadStripCuts badStripCuts_[4]
void setActive(int i, bool active)
Turn on/off the module for reconstruction, for the full run or lumi (using info from DB...
edm::Handle< edmNew::DetSetVector< SiStripCluster > > & handle()
void set128StripStatus(int i, bool good, int idx=-1)
const edm::Handle< edmNew::DetSetVector< SiPixelCluster > > & handle() const
Phase2OTMeasurementDetSet(const Phase2OTMeasurementConditionSet &cond)
int find(unsigned int jd, int i=0) const
std::vector< std::pair< unsigned int, unsigned int > > stripRegions_
std::vector< int > detIndex_
void update(int i, const Phase2DetSet &detSet)
bool isActive(int i) const
std::vector< PixelDetSet > detSet_
const SiStripRecHitMatcher * theMatcher
int find(unsigned int jd, int i=0) const
edmNew::DetSet< SiPixelCluster > PixelDetSet
const PixelClusterParameterEstimator * pixelCPE() const
std::vector< bool > stripUpdated_
const PxMeasurementConditionSet & conditions() const
const Phase2OTMeasurementConditionSet * conditionSet_
std::unordered_map< int, BadFEDChannelPositions > badFEDChannelPositionsSet_
Phase2OTMeasurementConditionSet(const ClusterParameterEstimator< Phase2TrackerCluster1D > *cpe)
edm::Handle< edmNew::DetSetVector< SiPixelCluster > > & handle()
std::vector< BadStripBlock > const & badStripBlocks(int i) const