42 typedef Names::const_iterator CIN;
47 vector<Item> linkItems;
48 typedef vector<Item>::const_iterator CIU;
50 for (
unsigned int idx = 0;
idx < n.size();
idx++) {
83 linkItems.push_back(item);
89 sort(linkItems.begin(), linkItems.end(),
Order());
95 for (CIU it = linkItems.begin(); it != linkItems.end(); it++) {
96 str << (*it).name->name() <<
" r=" << (*it).rocIds << endl;
98 LogDebug(
" sorted ENDCAP links: ") << str.str();
101 int lastPannelId = -1;
106 for (CIU it = linkItems.begin(); it != linkItems.end(); it++) {
108 int pannelId = it->name->pannelName();
110 if (pannelId != lastPannelId) {
111 lastPannelId = pannelId;
113 result.push_back(link);
118 for (
int id = (*it).rocIds.min();
id <= (*it).rocIds.max();
id++) {
120 rocs.push_back(
PixelROC(it->unit,
id, idRoc));
127 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)
PixelRecoRange< float > Range
PixelFEDCabling::Links Links
std::vector< PixelModuleName * > Names
std::string name() const override
from base class
int bladeName() const
blade id
std::vector< uint32_t > DetUnits
PixelModuleName::ModuleType moduleType() const override
module Type
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
bool operator()(const Item &, const Item &) const