10 using namespace sipixelobjects;
12 void PixelFEDLink::addItem(
const PixelROC & roc)
19 bool PixelFEDLink::checkRocNumbering()
const
22 unsigned int idx_expected = 0;
23 typedef ROCs::const_iterator CIR;
24 for (CIR it = theROCs.begin(); it != theROCs.end(); it++) {
26 if (idx_expected != (*it).idInLink() ) {
28 cout <<
"** PixelFEDLink, idInLink in ROC, expected: "
29 << idx_expected <<
" has: "<<(*it).idInLink() << endl;
37 theROCs.insert( theROCs.end(), rocs.begin(), rocs.end() );
46 if(
id()<10) out <<
" LNK: "<<id();
else out <<
" LNK: "<<id();
47 if (depth==0) out << printForMap();
50 typedef ROCs::const_iterator CIR;
51 for (CIR ir = theROCs.begin(); ir != theROCs.end(); ir++) out<< (ir)->print(depth);
52 out <<
"# total number of ROCs: "<< numberOfROCs() << endl;
59 string PixelFEDLink::printForMap()
const
61 typedef ROCs::const_iterator CIR;
70 for (CIR ir = theROCs.begin(); ir < theROCs.end(); ir++) {
74 if (first) prev = curr;
76 int idRoc = ir->idInDetUnit();
78 minroc =
min(idRoc, minroc);
79 maxroc =
max(idRoc, maxroc);
82 if ( !(curr==prev) ) {
83 out <<
" MOD: "<< prev.
name() <<
" ROC: "<< minroc<<
", "<<maxroc<< std::endl;
85 maxroc = minroc = idRoc;
90 if ( ir==theROCs.end()-1) {
91 out <<
" MOD: "<< curr.
name() <<
" ROC: "<< minroc<<
", "<<maxroc<< std::endl;
100 for (CIR ir = theROCs.begin(); ir < theROCs.end(); ir++) {
105 if (first) prev = curr;
106 if ( !(curr==prev) ) out <<
" MOD: "<< prev.
name() << std::endl;
107 if ( ir==theROCs.end()-1) out <<
" MOD: "<< curr.name() << std::endl;
unsigned int idInLink() const
id of this ROC in parent Link.
std::string print(const Track &, edm::Verbosity=edm::Concise)
Track print utility.
void add(const std::vector< const T * > &source, std::vector< const T * > &dest)
uint32_t rawId() const
get the raw id
int bladeName() const
blade id
const T & max(const T &a, const T &b)
virtual bool isBarrel() const
true for barrel modules
virtual std::string name() const
from base class
virtual std::string name() const
from base class
std::vector< std::vector< double > > tmp
int pannelName() const
pannel id
int diskName() const
disk id
std::vector< PixelROC > ROCs
ROCs served be this link.
HalfCylinder halfCylinder() const