9 using namespace sipixelobjects;
37 typedef Names::const_iterator CIN;
42 vector<Item> linkItems;
43 typedef vector<Item>::const_iterator CIU;
46 for(
unsigned int idx = 0; idx < n.size(); idx++) {
64 linkItems.push_back(item);
70 sort( linkItems.begin(), linkItems.end(),
Order() );
76 for (CIU it = linkItems.begin(); it != linkItems.end(); it++) {
77 str << (*it).name->name() <<
" r="<< (*it).rocIds << endl;
79 LogDebug(
" sorted ENDCAP links: ") << str.str();
82 int lastPannelId = -1;
87 for (CIU it = linkItems.begin(); it != linkItems.end(); it++) {
89 int pannelId = it->name->pannelName();
91 if ( pannelId != lastPannelId ) {
92 lastPannelId = pannelId;
93 if (idLink > 0) result.push_back(link);
98 for (
int id = (*it).rocIds.min();
id <= (*it).rocIds.max();
id++) {
100 rocs.push_back(
PixelROC( it->unit,
id, idRoc ) );
106 if (idLink > 0) result.push_back(link);
int plaquetteName() const
plaquetteId (in pannel)
const PixelEndcapName * name
void add(const ROCs &rocs)
add connection (defined by connection spec and ROCs)
PixelFEDCabling::Links Links
std::string link(std::string &nm, std::string &ns)
int bladeName() const
blade id
std::vector< uint32_t > DetUnits
std::vector< PixelModuleName * > Names
PixelRecoRange< float > Range
virtual PixelModuleName::ModuleType moduleType() const
module Type
virtual std::string name() const
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
Links links(const Names &n, const DetUnits &u) const