9 using namespace sipixelobjects;
18 bool PixelFEDLink::checkRocNumbering()
const {
20 unsigned int idx_expected = 0;
21 typedef ROCs::const_iterator CIR;
22 for (CIR it = theROCs.begin(); it != theROCs.end(); it++) {
24 if (idx_expected != (*it).idInLink()) {
26 cout <<
"** PixelFEDLink, idInLink in ROC, expected: " << idx_expected <<
" has: " << (*it).idInLink() << endl;
40 out <<
" LNK: " <<
id();
42 out <<
" LNK: " <<
id();
47 typedef ROCs::const_iterator CIR;
48 for (CIR ir = theROCs.begin(); ir != theROCs.end(); ir++)
49 out << (ir)->print(depth);
50 out <<
"# total number of ROCs: " << numberOfROCs() << endl;
56 string PixelFEDLink::printForMap()
const {
57 typedef ROCs::const_iterator CIR;
66 for (CIR ir = theROCs.begin(); ir < theROCs.end(); ir++) {
75 int idRoc = ir->idInDetUnit();
77 minroc =
min(idRoc, minroc);
78 maxroc =
max(idRoc, maxroc);
81 if (!(curr == prev)) {
82 out <<
" MOD: " << prev.
name() <<
" ROC: " << minroc <<
", " << maxroc << std::endl;
84 maxroc = minroc = idRoc;
89 if (ir == theROCs.end() - 1) {
90 out <<
" MOD: " << curr.
name() <<
" ROC: " << minroc <<
", " << maxroc << std::endl;
99 for (CIR ir = theROCs.begin(); ir < theROCs.end(); ir++) {
109 out <<
" MOD: " << prev.
name() << std::endl;
110 if (ir == theROCs.end() - 1)
111 out <<
" MOD: " << curr.name() << std::endl;
uint16_t *__restrict__ id
unsigned int idInLink() const
id of this ROC in parent Link.
constexpr uint32_t rawId() const
get the raw id
int bladeName() const
blade id
std::string name() const override
from base class
void print(TMatrixD &m, const char *label=nullptr, bool mathematicaFormat=false)
virtual bool isBarrel() const
true for barrel modules
void add(std::map< std::string, TH1 * > &h, TH1 *hist)
std::string name() const override
from base class
int pannelName() const
pannel id
int diskName() const
disk id
std::vector< PixelROC > ROCs
ROCs served be this link.
HalfCylinder halfCylinder() const