22 using namespace sipixelobjects;
43 theDisabledModules.insert(theDisabledModules.end(), idVector.begin(), idVector.end());
48 std::vector<uint32_t> vdets;
51 std::vector<uint32_t>::const_iterator iter = vdets.begin();
52 std::vector<uint32_t>::const_iterator iterEnd = vdets.end();
54 for (; iter != iterEnd; ++iter) {
56 BadModule.
DetID = *iter;
59 if (IsModuleUsable(BadModule.
DetID))
60 addDisabledModule(BadModule);
77 std::vector<SiPixelQuality::disabledModuleType> disabledModules = theDisabledModules;
81 if (iter != disabledModules.end() && iter->DetID == detid && iter->errorType == 0)
87 std::vector<SiPixelQuality::disabledModuleType> disabledModules = theDisabledModules;
89 return disabledModules.size();
96 std::vector<SiPixelQuality::disabledModuleType> disabledModules = theDisabledModules;
101 if (iter != disabledModules.end() && iter->DetID == detid && iter->errorType == 0)
108 if (IsModuleBad(detid))
110 std::vector<SiPixelQuality::disabledModuleType> disabledModules = theDisabledModules;
114 if (iter != disabledModules.end() && iter->DetID == detid) {
115 return ((iter->BadRocs >> rocNb) & 0x1);
123 std::vector<SiPixelQuality::disabledModuleType> disabledModules = theDisabledModules;
127 if (iter != disabledModules.end() && iter->DetID == detid)
128 return iter->BadRocs;
135 std::vector<LocalPoint> badrocpositions(0);
136 for (
unsigned int i = 0;
i < 16;
i++) {
137 if (IsRocBad(detid,
i) ==
true) {
139 typedef std::vector<CablingPathToDetUnit>::const_iterator
IT;
140 for (IT it = path.begin(); it != path.end(); ++it) {
151 badrocpositions.push_back(localpoint);
157 return badrocpositions;
void addDisabledModule(disabledModuleType module)
void add(const SiStripDetVOff *)
virtual LocalPoint localPosition(const MeasurementPoint &) const =0
virtual const sipixelobjects::PixelROC * findItem(const sipixelobjects::CablingPathToDetUnit &) const =0
virtual std::vector< sipixelobjects::CablingPathToDetUnit > pathToDetUnit(uint32_t rawDetId) const =0
bool IsFedBad(const uint32_t &detid) const
bool IsRocBad(const uint32_t &detid, const short &rocNb) const
identify pixel inside single ROC
global coordinates (row and column in DetUnit, as in PixelDigi)
void getDetIds(std::vector< uint32_t > &DetIds_) const
const std::vector< LocalPoint > getBadRocPositions(const uint32_t &detid, const TrackerGeometry &theTracker, const SiPixelFedCabling *map) const
unsigned int idInDetUnit() const
id of this ROC in DetUnit etermined by token path
std::vector< LinkConnSpec >::const_iterator IT
bool IsModuleUsable(const uint32_t &detid) const
bool IsModuleBad(const uint32_t &detid) const
const TrackerGeomDet * idToDet(DetId) const override
virtual const PixelTopology & specificTopology() const
Returns a reference to the pixel proxy topology.
row and collumn in ROC representation
short getBadRocs(const uint32_t &detid) const
__host__ __device__ constexpr RandomIt lower_bound(RandomIt first, RandomIt last, const T &value, Compare comp={})
GlobalPixel toGlobal(const LocalPixel &loc) const