35 for(
unsigned ii=0;
ii<
_d.size();
ii++ )
44 for(
unsigned ii=0;
ii<
_d.size();
ii++ )
46 if(
_d[
ii]->
id()==id_ )
73 vec.push_back(
this );
76 for(
unsigned ii=0;
ii<
n();
ii++ )
78 bool ok =
_d[
ii]->getListOfChannels( vec );
90 vec.push_back( mother );
99 if(
_ig==g )
return this;
102 if( mother!=
nullptr )
104 if( mother->
_ig==g )
return mother;
114 for(
unsigned ii=0;
ii<
n();
ii++ )
116 vec.push_back(
_d[
ii]);
117 _d[
ii]->getListOfDescendants( vec );
125 for(
unsigned ii=0;
ii<
n();
ii++ )
128 if( curLeaf->
_ig==ig ) vec.push_back(curLeaf);
137 std::vector< MEChannel* > vec;
139 if( !OK )
return nullptr;
141 for(
unsigned int ii=0;
ii<vec.size();
ii++ )
144 if( leaf->
id()==id_ )
return leaf;
152 std::vector< MEChannel* > vec;
154 if( !OK )
return nullptr;
163 if( leaf==
nullptr )
return nullptr;
164 while( ig!=leaf->
_ig )
184 for(
unsigned ii=0;
ii<
n();
ii++ )
186 leaf =
_d[
ii]->getChannel( ix, iy );
187 if( leaf!=
nullptr )
break;
198 o << ME::granularity[
ii] <<
"=" <<
_id[
ii] <<
" ";
202 o <<
"NDau=" <<
n() <<
" " ;
206 o <<
"ix=" <<
_ix <<
" iy=" <<
_iy <<
" " ;
211 for(
unsigned jj=0;
jj<
n();
jj++ )
213 _d[
jj]->print( o,
true );
233 out+=
"=";out += lmr_;
236 out+=
"(DCC="; out+=dcc_; out+=
",";
238 out+=
"/"; out+=side_; out+=
")";
263 out +=
"/ieta="; out+=
ix();
264 out +=
"/iphi="; out+=
iy();
267 out +=
"(ix="; out+=ixy_.first;
268 out +=
"/iy="; out+=ixy_.second;
273 out +=
"/ix="; out+=
ix();
274 out +=
"/iy="; out+=
iy();
281 std::vector< MEChannel* > _channels;
283 int nchan = _channels.size();
333 out +=
"_"; out+=ixy_.first;
334 out +=
"_"; out+=ixy_.second;
338 out +=
"_"; out+=
ix();
339 out +=
"_"; out+=
iy();
static XYCoord localCoord(int icr)
bool getListOfDescendants(std::vector< MEChannel * > &)
MEChannel * getChannel(int ix, int iy)
bool getListOfChannels(std::vector< MEChannel * > &)
static TString granularity[iSizeG]
bool getListOfAncestors(std::vector< MEChannel * > &)
MEChannel * getDaughter(int ix, int iy, int ig)
The Signals That Services Can Subscribe To This is based on ActivityRegistry and is current per Services can connect to the signals distributed by the ActivityRegistry in order to monitor the activity of the application Each possible callback has some defined which we here list in angle e g
MEChannel * getDescendant(int ig, int ii)
void print(std::ostream &o, bool recursif=false) const
static std::pair< int, int > dccAndSide(int ilmr)
MEChannel * addDaughter(int ix, int iy, int ii)
std::pair< EBLocalCoord, EBLocalCoord > XYCoord
std::pair< int, edm::FunctionWithDict > OK
std::vector< MEChannel * > _d
MEChannel * getFirstDescendant(int ig)
MEChannel * getAncestor(int ig)
static TString smName(int ilmr)
MEChannel(int ix, int iy, int ii, MEChannel *mother)
MEChannel * d(unsigned ii)