|
ATLAS Offline Software
|
#include <RegSelectorMap.h>
|
virtual void | HashIDList (const IRoiDescriptor &roi, std::vector< IdentifierHash > &idlist) const override |
| implementation of the IRegSelUT interface - intentionally inlined More...
|
|
virtual void | HashIDList (long layer, const IRoiDescriptor &roi, std::vector< IdentifierHash > &idlist) const override |
| HashIDList interface declaration. return list of non-repeated IdentifierHash. More...
|
|
virtual void | ROBIDList (const IRoiDescriptor &roi, std::vector< uint32_t > &roblist) const override |
| Rob identifier methods. More...
|
|
virtual void | ROBIDList (long layer, const IRoiDescriptor &roi, std::vector< uint32_t > &roblist) const override |
| ROBIDList interface declaration. This interface can be used by the ID subdetectors. A list of non-repeated ROBIDs (uint_32_t) is returned by a reference. More...
|
|
virtual | ~RegSelectorMap () override=default |
|
double | etaminValue (void) const |
| the rest of the class starts here More...
|
|
double | etamaxValue (void) const |
|
double | phiminValue (void) const |
|
double | phimaxValue (void) const |
|
const std::vector< IdentifierHash > & | hashIdOut (void) const |
|
const std::vector< uint32_t > & | robIdOut (void) const |
|
const std::vector< int > & | barORendOut (void) const |
|
const std::vector< int > & | layORdskOut (void) const |
|
const std::vector< double > & | etaMinOut (void) const |
|
const std::vector< double > & | etaMaxOut (void) const |
|
const std::vector< double > & | phiMinOut (void) const |
|
const std::vector< double > & | phiMaxOut (void) const |
|
void | mountDataStruct (void) |
|
void | regionSelectorRobIdUint (DETID TYPE, double etaminIn, double etamaxIn, double phiminIn, double phimaxIn, std::vector< uint32_t > &outList) const |
|
void | regionSelectorRobIdUint (double etaminIn, double etamaxIn, double phiminIn, double phimaxIn, std::vector< uint32_t > &outList) const |
|
void | regionSelectorRobIdUint (long layNumber, double etaminIn, double etamaxIn, double phiminIn, double phimaxIn, std::vector< uint32_t > &outList) const |
|
void | addLut (const RegionSelectorLUT *detLut) |
|
void | addLut (const RegionSelectorLUT &detLut) |
|
void | regionSelector (DETID TYPE, double etaminIn, double etamaxIn, double phiminIn, double phimaxIn, std::vector< IdentifierHash > &outList) const |
|
void | regionSelector (TYPEID typeinID, double etaminIn, double etamaxIn, double phiminIn, double phimaxIn, std::vector< IdentifierHash > &outList) const |
|
void | regionSelector (long layNumber, double etaminIn, double etamaxIn, double phiminIn, double phimaxIn, std::vector< IdentifierHash > &outList) const |
|
StatusCode | read (const char *filename, DETID type) |
|
void | summaryDataFile (std::list< RegSelectorMapElement > &dataList) |
|
void | verifyInputsInternal (double &etaminIn, double &etamaxIn, double &phiminIn, double &phimaxIn) const |
|
StatusCode | verifyInputs (double &etaminIn, double &etamaxIn, double &phiminIn, double &phimaxIn) const |
|
StatusCode | verifyInputsMinusPi (double &etaminIn, double &etamaxIn, double &phiminIn, double &phimaxIn) const |
|
void | verifyOutput (double etaminIn, double etamaxIn, double phiminIn, double phimaxIn, const std::vector< IdentifierHash > &outputIdlist) const |
|
void | getEtaPhi (IdentifierHash hashId, double *etaMin, double *etaMax, double *phiMin, double *phiMax) const |
|
|
virtual void | HashIDList_internal (const IRoiDescriptor &roi, std::vector< IdentifierHash > &idlist) const |
| internal lookup table access for full interface ... More...
|
|
virtual void | HashIDList_internal (long layer, const IRoiDescriptor &roi, std::vector< IdentifierHash > &idlist) const |
|
virtual void | ROBIDList_internal (const IRoiDescriptor &roi, std::vector< uint32_t > &roblist) const |
| Rob identifier methods. More...
|
|
virtual void | ROBIDList_internal (long layer, const IRoiDescriptor &roi, std::vector< uint32_t > &roblist) const |
|
template<typename C , typename T > |
void | IDList (const IRoiDescriptor &roi, std::vector< T > &idlist, handler< C, T > lister) const |
|
template<typename C , typename T > |
void | IDList_layer (long layer, const IRoiDescriptor &roi, std::vector< T > &idlist, handler_layer< C, T > lister) const |
|
|
void | findPosition (TYPEID typeinID, bool posORneg, std::list< RegSelectorMapElement >::const_iterator &it) const |
|
void | findPosition (long layNumber, bool posORneg, std::list< RegSelectorMapElement >::const_iterator &it) const |
|
void | findMaxMinValues (std::list< RegSelectorMapElement > &dataList) |
|
RegSelectorMapElement | creatingElement (int &positionIn, int &numberIn, double &etaminIn, double &etamaxIn, double &phiminIn, double &phimaxIn, IdentifierHash &hashIdIn, uint32_t &robId) |
|
void | insertList (std::list< RegSelectorMapElement > &dataList, int positionIn, int numberIn, double etaminIn, double etamaxIn, double phiminIn, double phimaxIn, IdentifierHash hashIdIn, uint32_t &robIdIn) |
|
void | insertDataElement (int &positionIn, int &numberIn, double &etaminIn, double &etamaxIn, double &phiminIn, double &phimaxIn, IdentifierHash &hashIdIn, uint32_t &robIdIn) |
|
void | writeLine (int barORend, int layORdsk, IdentifierHash hashId, uint32_t robId, double emin, double emax, double pmin, double pmax) |
|
StatusCode | readTILE (const char *filename) |
|
Definition at line 28 of file RegSelectorMap.h.
◆ handler
template<typename C , typename T >
◆ handler_layer
template<typename C , typename T >
◆ ~RegSelectorMap()
virtual RegSelectorMap::~RegSelectorMap |
( |
| ) |
|
|
overridevirtualdefault |
◆ addLut() [1/2]
◆ addLut() [2/2]
◆ barORendOut()
const std::vector< int > & RegSelectorMap::barORendOut |
( |
void |
| ) |
const |
◆ creatingElement()
RegSelectorMapElement RegSelectorMap::creatingElement |
( |
int & |
positionIn, |
|
|
int & |
numberIn, |
|
|
double & |
etaminIn, |
|
|
double & |
etamaxIn, |
|
|
double & |
phiminIn, |
|
|
double & |
phimaxIn, |
|
|
IdentifierHash & |
hashIdIn, |
|
|
uint32_t & |
robId |
|
) |
| |
|
private |
◆ etaMaxOut()
const std::vector< double > & RegSelectorMap::etaMaxOut |
( |
void |
| ) |
const |
◆ etamaxValue()
double RegSelectorMap::etamaxValue |
( |
void |
| ) |
const |
◆ etaMinOut()
const std::vector< double > & RegSelectorMap::etaMinOut |
( |
void |
| ) |
const |
◆ etaminValue()
double RegSelectorMap::etaminValue |
( |
void |
| ) |
const |
◆ findMaxMinValues()
◆ findPosition() [1/2]
void RegSelectorMap::findPosition |
( |
long |
layNumber, |
|
|
bool |
posORneg, |
|
|
std::list< RegSelectorMapElement >::const_iterator & |
it |
|
) |
| const |
|
private |
Definition at line 662 of file RegSelectorMap.cxx.
665 std::list<RegSelectorMapElement>::const_iterator itPos, itNeg, itEnd;
670 if(posORneg ==
false){
680 if( (*it).layerDiskNumber() == layNumber )
◆ findPosition() [2/2]
what does this even do ? just loops over the oiterators and then exits with the value of the iterator set ?? this is quite dangerous - in principle it can return itEnd but will any calling function test for this properly ??
Definition at line 631 of file RegSelectorMap.cxx.
634 std::list<RegSelectorMapElement>::const_iterator itPos, itNeg, itEnd;
640 if(posORneg ==
false){
655 if( (*it).layerDiskNumber() == typeinID )
◆ getEtaPhi()
void RegSelectorMap::getEtaPhi |
( |
IdentifierHash |
hashId, |
|
|
double * |
etaMin, |
|
|
double * |
etaMax, |
|
|
double * |
phiMin, |
|
|
double * |
phiMax |
|
) |
| const |
◆ HashIDList() [1/2]
implementation of the IRegSelUT interface - intentionally inlined
implementation of the IRegSelUT interface - intentionally inlined
hash id methods
hash id methods
Implements IRegSelLUT.
Definition at line 18 of file RegSelectorMap.cxx.
◆ HashIDList() [2/2]
HashIDList interface declaration. return list of non-repeated IdentifierHash.
- Parameters
-
long | layer, long int to decide which layer within the detector. |
IRoiDescriptor | roi, the IRoiDescriptor for the roi, all enabled elements in the roi are found. |
- Returns
- std::vector<IdentifierHash> which is a list of non-repeated Offline Identifier Hash numbers.
Implements IRegSelLUT.
Definition at line 22 of file RegSelectorMap.cxx.
◆ HashIDList_internal() [1/2]
internal lookup table access for full interface ...
internal hash id methods
Definition at line 40 of file RegSelectorMap.cxx.
◆ HashIDList_internal() [2/2]
◆ hashIdOut()
◆ IDList()
template<typename C , typename T >
Definition at line 88 of file IRegSelLUT.h.
92 for (
unsigned iroi=roi.
size() ; iroi-- ; ) IDList<C>( *(roi.
at(iroi)), idlist, lister );
97 (
dynamic_cast<const C*
>(
this)->*lister)( roi, idlist );
◆ IDList_layer()
template<typename C , typename T >
Definition at line 106 of file IRegSelLUT.h.
110 for (
unsigned iroi=roi.
size() ; iroi-- ; ) IDList_layer<C>(
layer, *(roi.
at(iroi)), idlist, lister );
115 (
dynamic_cast<const C*
>(
this)->*lister)(
layer, roi, idlist );
◆ insertDataElement()
void RegSelectorMap::insertDataElement |
( |
int & |
positionIn, |
|
|
int & |
numberIn, |
|
|
double & |
etaminIn, |
|
|
double & |
etamaxIn, |
|
|
double & |
phiminIn, |
|
|
double & |
phimaxIn, |
|
|
IdentifierHash & |
hashIdIn, |
|
|
uint32_t & |
robIdIn |
|
) |
| |
|
private |
Definition at line 750 of file RegSelectorMap.cxx.
754 etaminIn, etamaxIn, phiminIn, phimaxIn, hashIdIn, robIdIn);
756 else if(positionIn < 0){
758 etaminIn, etamaxIn, phiminIn, phimaxIn, hashIdIn, robIdIn);
760 else if(positionIn == 0){
762 etaminIn, etamaxIn, phiminIn, phimaxIn, hashIdIn, robIdIn);
◆ insertList()
void RegSelectorMap::insertList |
( |
std::list< RegSelectorMapElement > & |
dataList, |
|
|
int |
positionIn, |
|
|
int |
numberIn, |
|
|
double |
etaminIn, |
|
|
double |
etamaxIn, |
|
|
double |
phiminIn, |
|
|
double |
phimaxIn, |
|
|
IdentifierHash |
hashIdIn, |
|
|
uint32_t & |
robIdIn |
|
) |
| |
|
private |
Definition at line 718 of file RegSelectorMap.cxx.
726 for(
it = dataList.begin();
it != dataList.end(); ++
it){
727 if( positionIn == (*it).layerDiskPosition() ){
729 if( numberIn == (*it).layerDiskNumber() ) {
730 (*it).additem( hashIdIn, etaminIn, etamaxIn,
731 phiminIn, phimaxIn, numberIn, positionIn, robIdIn );
741 if(
flag ==
true || dataList.size() == 0){
746 dataList.push_back( newElement );
◆ layORdskOut()
const std::vector< int > & RegSelectorMap::layORdskOut |
( |
void |
| ) |
const |
◆ mountDataStruct()
void RegSelectorMap::mountDataStruct |
( |
void |
| ) |
|
Definition at line 113 of file RegSelectorMap.cxx.
117 for(
i = 0;
i < nLines; ++
i){
126 (*it).findMaxMinElem();
128 (*it).findMaxMinElem();
130 (*it).findMaxMinElem();
◆ phiMaxOut()
const std::vector< double > & RegSelectorMap::phiMaxOut |
( |
void |
| ) |
const |
◆ phimaxValue()
double RegSelectorMap::phimaxValue |
( |
void |
| ) |
const |
◆ phiMinOut()
const std::vector< double > & RegSelectorMap::phiMinOut |
( |
void |
| ) |
const |
◆ phiminValue()
double RegSelectorMap::phiminValue |
( |
void |
| ) |
const |
◆ read()
StatusCode RegSelectorMap::read |
( |
const char * |
filename, |
|
|
DETID |
type |
|
) |
| |
can't call the msg stream in this class - oh dear leave the code in place for the time being until we sort out a solution
Definition at line 366 of file RegSelectorMap.cxx.
371 std::string unresolvedFileName(
filename);
374 if (fullFileName ==
"") {
376 std::cerr <<
"RegSelectorMap: FATAL: Could not find input file in DATAPATH" << unresolvedFileName<< std::endl;
377 return StatusCode::FAILURE;
389 sc = StatusCode::FAILURE;
◆ readTILE()
StatusCode RegSelectorMap::readTILE |
( |
const char * |
filename | ) |
|
|
private |
Definition at line 780 of file RegSelectorMap.cxx.
784 int barORend =0, layORwhe =0;
786 double emin, emax, pmin, pmax;
791 sc = StatusCode::FAILURE;
796 if (strncmp(
buffer,
"#",1)!=0){
797 sscanf(
buffer,
"%x %x %x %lf %lf %lf %lf", &robid, &collid, (
unsigned int*)&hashId, &emin, &emax, &pmin, &pmax);
798 writeLine(barORend, layORwhe, hashId, robid, emin, emax, pmin, pmax);
◆ regionSelector() [1/3]
void RegSelectorMap::regionSelector |
( |
DETID |
TYPE, |
|
|
double |
etaminIn, |
|
|
double |
etamaxIn, |
|
|
double |
phiminIn, |
|
|
double |
phimaxIn, |
|
|
std::vector< IdentifierHash > & |
outList |
|
) |
| const |
Definition at line 220 of file RegSelectorMap.cxx.
227 std::list<RegSelectorMapElement>::const_iterator
it;
228 std::set<IdentifierHash> outset;
229 std::set<IdentifierHash>::const_iterator itset, negbarrelbeg,negbarrelend;
230 bool divideEta =
false;
234 (*it).selection(etaminIn, etamaxIn, phiminIn, phimaxIn, outset);
238 case TILE: divideEta =
true;
break;
243 if(etaminIn < 0 || etamaxIn < 0){
245 (*it).selection(etaminIn, etamaxIn, phiminIn, phimaxIn, outset);
249 if( etaminIn >= 0 || etamaxIn >= 0 ){
251 (*it).selection(etaminIn, etamaxIn, phiminIn, phimaxIn, outset);
257 (*it).selection(etaminIn, etamaxIn, phiminIn, phimaxIn, outset);
260 (*it).selection(etaminIn, etamaxIn, phiminIn, phimaxIn, outset);
265 negbarrelbeg = outset.upper_bound(0x3f);
266 negbarrelend = outset.lower_bound(0x80);
267 for(itset = negbarrelbeg; itset != negbarrelend; ++itset){
270 for(itset = outset.begin(); itset != negbarrelbeg; ++itset){
273 for(itset = negbarrelend; itset != outset.end(); ++itset){
277 for(itset = outset.begin(); itset != outset.end(); ++itset){
◆ regionSelector() [2/3]
void RegSelectorMap::regionSelector |
( |
long |
layNumber, |
|
|
double |
etaminIn, |
|
|
double |
etamaxIn, |
|
|
double |
phiminIn, |
|
|
double |
phimaxIn, |
|
|
std::vector< IdentifierHash > & |
outList |
|
) |
| const |
Definition at line 323 of file RegSelectorMap.cxx.
330 std::list<RegSelectorMapElement>::const_iterator
it, itEnd;
331 std::set<IdentifierHash> outset;
332 std::set<IdentifierHash>::const_iterator itset;
336 if( etaminIn > 0 && etamaxIn > 0 ){
339 (*it).selection( etaminIn, etamaxIn, phiminIn, phimaxIn, outset);
341 else if( etaminIn < 0 && etamaxIn < 0 ){
344 (*it).selection( etaminIn, etamaxIn, phiminIn, phimaxIn, outset);
352 if( (*it).layerDiskNumber() == layNumber )
358 (*it).selection( etaminIn, etamaxIn, phiminIn, phimaxIn, outset);
360 for(itset = outset.begin(); itset != outset.end(); ++itset){
◆ regionSelector() [3/3]
void RegSelectorMap::regionSelector |
( |
TYPEID |
typeinID, |
|
|
double |
etaminIn, |
|
|
double |
etamaxIn, |
|
|
double |
phiminIn, |
|
|
double |
phimaxIn, |
|
|
std::vector< IdentifierHash > & |
outList |
|
) |
| const |
Definition at line 284 of file RegSelectorMap.cxx.
291 std::list<RegSelectorMapElement>::const_iterator
it;
292 std::set<IdentifierHash> outset;
293 std::set<IdentifierHash>::const_iterator itset;
297 if( etaminIn > 0 && etamaxIn > 0 ){
300 (*it).selection( etaminIn, etamaxIn, phiminIn, phimaxIn, outset);
302 else if( etaminIn < 0 && etamaxIn < 0 ){
305 (*it).selection( etaminIn, etamaxIn, phiminIn, phimaxIn, outset);
310 (*it).selection( etaminIn, etamaxIn, phiminIn, phimaxIn, outset);
313 (*it).selection( etaminIn, etamaxIn, phiminIn, phimaxIn, outset);
316 for(itset = outset.begin(); itset != outset.end(); ++itset){
◆ regionSelectorRobIdUint() [1/3]
void RegSelectorMap::regionSelectorRobIdUint |
( |
DETID |
TYPE, |
|
|
double |
etaminIn, |
|
|
double |
etamaxIn, |
|
|
double |
phiminIn, |
|
|
double |
phimaxIn, |
|
|
std::vector< uint32_t > & |
outList |
|
) |
| const |
Definition at line 139 of file RegSelectorMap.cxx.
146 std::list<RegSelectorMapElement>::const_iterator
it;
147 std::set<uint32_t> outset;
148 std::set<uint32_t>::const_iterator itset, negbarrelbeg, negbarrelend;
149 bool divideEta =
false;
153 (*it).selectionRobIdUint( etaminIn, etamaxIn, phiminIn, phimaxIn, outset );
157 case TILE: divideEta =
true;
break;
162 if(etaminIn < 0 || etamaxIn < 0){
164 (*it).selectionRobIdUint(etaminIn, etamaxIn, phiminIn, phimaxIn, outset);
168 if( etaminIn >= 0 || etamaxIn >= 0 ){
170 (*it).selectionRobIdUint(etaminIn, etamaxIn, phiminIn, phimaxIn, outset);
176 (*it).selectionRobIdUint(etaminIn, etamaxIn, phiminIn, phimaxIn, outset);
179 (*it).selectionRobIdUint(etaminIn, etamaxIn, phiminIn, phimaxIn, outset);
184 negbarrelbeg = outset.upper_bound(0x51000f);
185 negbarrelend = outset.lower_bound(0x530000);
186 for(itset = negbarrelbeg; itset != negbarrelend; ++itset){
189 for(itset = outset.begin(); itset != negbarrelbeg; ++itset){
192 for(itset = negbarrelend; itset != outset.end(); ++itset){
196 for(itset = outset.begin(); itset != outset.end(); ++itset){
◆ regionSelectorRobIdUint() [2/3]
void RegSelectorMap::regionSelectorRobIdUint |
( |
double |
etaminIn, |
|
|
double |
etamaxIn, |
|
|
double |
phiminIn, |
|
|
double |
phimaxIn, |
|
|
std::vector< uint32_t > & |
outList |
|
) |
| const |
Definition at line 523 of file RegSelectorMap.cxx.
529 std::set<uint32_t> outset;
532 double etamin, etamax, phimin, phimax;
533 std::vector<uint32_t> outvec;
536 for(
i= 0;
i < vecsize; ++
i){
546 if( (etaminIn <= etamax) && (etamaxIn >=
etamin) ){
547 if( (phiminIn <= phimax) && (phimaxIn >= phimin) ){
553 if( (etaminIn <= etamax) && (etamaxIn >=
etamin) ){
554 if( (phiminIn <= phimax) && (phimaxIn >= phimin) ){
561 if( (etaminIn <= etamax) && (etamaxIn >=
etamin) ){
562 if( (phiminIn <= phimax) && (phimaxIn >= phimin) ){
570 for(
it = outset.begin();
it != outset.end(); ++
it)
571 outvec.push_back(*
it);
574 std::cout <<
"equal vectors " << std::endl;
575 std::cout <<
"desired output ";
576 for( j=0; j < outvec.size(); ++j)
577 std::cout << std::dec << outvec[j] <<
" ";
578 std::cout << std::endl;
579 std::cout <<
"obtained output ";
580 for( j=0; j <
outList.size(); ++j)
581 std::cout << std::dec <<
outList[j] <<
" ";
582 std::cout << std::endl;
◆ regionSelectorRobIdUint() [3/3]
void RegSelectorMap::regionSelectorRobIdUint |
( |
long |
layNumber, |
|
|
double |
etaminIn, |
|
|
double |
etamaxIn, |
|
|
double |
phiminIn, |
|
|
double |
phimaxIn, |
|
|
std::vector< uint32_t > & |
outList |
|
) |
| const |
Definition at line 588 of file RegSelectorMap.cxx.
595 std::set<uint32_t> outset;
596 std::list<RegSelectorMapElement>::const_iterator
it, itEnd;
597 std::set<uint32_t>::const_iterator itset;
601 if( etaminIn > 0 && etamaxIn > 0 ){
604 (*it).selectionRobIdUint( etaminIn, etamaxIn, phiminIn, phimaxIn, outset);
606 else if( etaminIn < 0 && etamaxIn < 0 ){
609 (*it).selectionRobIdUint( etaminIn, etamaxIn, phiminIn, phimaxIn, outset);
617 if( (*it).layerDiskNumber() == layNumber )
623 (*it).selectionRobIdUint( etaminIn, etamaxIn, phiminIn, phimaxIn, outset);
625 for(itset = outset.begin(); itset != outset.end(); ++itset){
◆ removeDuplicates()
template<typename T >
static void IRegSelLUT::removeDuplicates |
( |
std::vector< T > & |
vec | ) |
|
|
inlinestaticprotectedinherited |
useful for removing duplicates if required ...
Definition at line 78 of file IRegSelLUT.h.
80 vec.erase(std::unique(
vec.begin(),
vec.end()),
vec.end());
◆ ROBIDList() [1/2]
void RegSelectorMap::ROBIDList |
( |
const IRoiDescriptor & |
roi, |
|
|
std::vector< uint32_t > & |
roblist |
|
) |
| const |
|
overridevirtual |
◆ ROBIDList() [2/2]
void RegSelectorMap::ROBIDList |
( |
long |
layer, |
|
|
const IRoiDescriptor & |
roi, |
|
|
std::vector< uint32_t > & |
roblist |
|
) |
| const |
|
overridevirtual |
ROBIDList interface declaration. This interface can be used by the ID subdetectors. A list of non-repeated ROBIDs (uint_32_t) is returned by a reference.
- Parameters
-
long | layer, long int to decide which layer within the detector. |
IRoiDescriptor | the IRoiDescriptor for the roi, all enabled elements in the roi are found. |
- Returns
- std::vector<uint32_t> which is a list of non-repeated ROBID numbers.
Implements IRegSelLUT.
Definition at line 32 of file RegSelectorMap.cxx.
◆ ROBIDList_internal() [1/2]
void RegSelectorMap::ROBIDList_internal |
( |
const IRoiDescriptor & |
roi, |
|
|
std::vector< uint32_t > & |
roblist |
|
) |
| const |
|
protectedvirtual |
Rob identifier methods.
internal Rob identifier methods
Definition at line 52 of file RegSelectorMap.cxx.
◆ ROBIDList_internal() [2/2]
void RegSelectorMap::ROBIDList_internal |
( |
long |
layer, |
|
|
const IRoiDescriptor & |
roi, |
|
|
std::vector< uint32_t > & |
roblist |
|
) |
| const |
|
protectedvirtual |
◆ robIdOut()
const std::vector< uint32_t > & RegSelectorMap::robIdOut |
( |
void |
| ) |
const |
◆ summaryDataFile()
Definition at line 394 of file RegSelectorMap.cxx.
397 for(
it = dataList.begin();
it != dataList.end(); ++
it){
398 std::cout <<
"position: " << (*it).layerDiskPosition() <<
" number: " << (*it).layerDiskNumber() << std::endl;
401 std::cout <<
"hashId: ";
402 std::vector<IdentifierHash> aux = (*it).hashId();
404 std::cout << (*i) <<
" ";
405 std::cout << std::endl;
◆ verifyInputs()
StatusCode RegSelectorMap::verifyInputs |
( |
double & |
etaminIn, |
|
|
double & |
etamaxIn, |
|
|
double & |
phiminIn, |
|
|
double & |
phimaxIn |
|
) |
| const |
◆ verifyInputsInternal()
void RegSelectorMap::verifyInputsInternal |
( |
double & |
etaminIn, |
|
|
double & |
etamaxIn, |
|
|
double & |
phiminIn, |
|
|
double & |
phimaxIn |
|
) |
| const |
Definition at line 412 of file RegSelectorMap.cxx.
415 while (phiminIn > 2*
M_PI) phiminIn -= 2*
M_PI;
416 while (phiminIn < 0 ) phiminIn += 2*
M_PI;
417 while (phimaxIn > 2*
M_PI) phimaxIn -= 2*
M_PI;
418 while (phimaxIn < 0 ) phimaxIn += 2*
M_PI;
◆ verifyInputsMinusPi()
StatusCode RegSelectorMap::verifyInputsMinusPi |
( |
double & |
etaminIn, |
|
|
double & |
etamaxIn, |
|
|
double & |
phiminIn, |
|
|
double & |
phimaxIn |
|
) |
| const |
◆ verifyOutput()
void RegSelectorMap::verifyOutput |
( |
double |
etaminIn, |
|
|
double |
etamaxIn, |
|
|
double |
phiminIn, |
|
|
double |
phimaxIn, |
|
|
const std::vector< IdentifierHash > & |
outputIdlist |
|
) |
| const |
Definition at line 469 of file RegSelectorMap.cxx.
473 std::vector<IdentifierHash> outset;
476 double etamin, etamax, phimin, phimax;
478 for(
i= 0;
i < vecsize; ++
i){
488 if( (etaminIn <= etamax) && (etamaxIn >=
etamin) ){
489 if( (phiminIn <= phimax) && (phimaxIn >= phimin) ){
495 if( (etaminIn <= etamax) && (etamaxIn >=
etamin) ){
496 if( (phiminIn <= phimax) && (phimaxIn >= phimin) ){
503 if( (etaminIn <= etamax) && (etamaxIn >=
etamin) ){
504 if( (phiminIn <= phimax) && (phimaxIn >= phimin) ){
510 if(outset == outputIdlist)
511 std::cout <<
"equal vectors " << std::endl;
512 std::cout <<
"desired output ";
513 for( j=0; j < outset.size(); ++j)
514 std::cout << std::dec << outset[j] <<
" ";
515 std::cout << std::endl;
516 std::cout <<
"obtained output ";
517 for( j=0; j < outputIdlist.size(); ++j)
518 std::cout << std::dec << outputIdlist[j] <<
" ";
519 std::cout << std::endl;
◆ writeLine()
void RegSelectorMap::writeLine |
( |
int |
barORend, |
|
|
int |
layORdsk, |
|
|
IdentifierHash |
hashId, |
|
|
uint32_t |
robId, |
|
|
double |
emin, |
|
|
double |
emax, |
|
|
double |
pmin, |
|
|
double |
pmax |
|
) |
| |
|
private |
◆ m_barORend
std::vector<int> RegSelectorMap::m_barORend |
|
private |
◆ m_barreldataList
◆ m_etamax
std::vector<double> RegSelectorMap::m_etamax |
|
private |
◆ m_etamaxDet
double RegSelectorMap::m_etamaxDet |
|
private |
◆ m_etamin
std::vector<double> RegSelectorMap::m_etamin |
|
private |
◆ m_etaminDet
double RegSelectorMap::m_etaminDet |
|
private |
◆ m_hashId
◆ m_layORdsk
std::vector<int> RegSelectorMap::m_layORdsk |
|
private |
◆ m_negdataList
◆ m_phimax
std::vector<double> RegSelectorMap::m_phimax |
|
private |
◆ m_phimaxDet
double RegSelectorMap::m_phimaxDet |
|
private |
◆ m_phimin
std::vector<double> RegSelectorMap::m_phimin |
|
private |
◆ m_phiminDet
double RegSelectorMap::m_phiminDet |
|
private |
◆ m_posdataList
◆ m_robId
std::vector<uint32_t> RegSelectorMap::m_robId |
|
private |
The documentation for this class was generated from the following files:
JetConstituentVector::iterator iterator
double phimaxValue(void) const
double phiminValue(void) const
void writeLine(int barORend, int layORdsk, IdentifierHash hashId, uint32_t robId, double emin, double emax, double pmin, double pmax)
int layerDiskPosition(int hashId) const
static std::string find_file(const std::string &logical_file_name, const std::string &search_path, SearchType search_type=LocalSearch)
virtual double etaMinus() const =0
void insertList(std::list< RegSelectorMapElement > &dataList, int positionIn, int numberIn, double etaminIn, double etamaxIn, double phiminIn, double phimaxIn, IdentifierHash hashIdIn, uint32_t &robIdIn)
std::vector< int > m_barORend
virtual unsigned size() const =0
number of constituents
std::vector< size_t > vec
unsigned int maxHash(void) const
virtual double etaPlus() const =0
double etaMin(int hashId) const
std::list< RegSelectorMapElement > m_posdataList
void additem(const IdentifierHash hashId, const double etaMin, const double etaMax, const double phiMin, const double phiMax, const int layerDiskNumber, const int layerDiskPosition, const uint32_t robId)
std::vector< int > m_layORdsk
double phiMax(int hashId) const
void addLut(const RegionSelectorLUT *detLut)
virtual void HashIDList_internal(const IRoiDescriptor &roi, std::vector< IdentifierHash > &idlist) const
internal lookup table access for full interface ...
RegSelectorMapElement creatingElement(int &positionIn, int &numberIn, double &etaminIn, double &etamaxIn, double &phiminIn, double &phimaxIn, IdentifierHash &hashIdIn, uint32_t &robId)
::StatusCode StatusCode
StatusCode definition for legacy code.
virtual void ROBIDList_internal(const IRoiDescriptor &roi, std::vector< uint32_t > &roblist) const
Rob identifier methods.
virtual double phiMinus() const =0
virtual double phiPlus() const =0
extreme phi values
#define TYPE(CODE, TYP, IOTYP)
void regionSelector(DETID TYPE, double etaminIn, double etamaxIn, double phiminIn, double phimaxIn, std::vector< IdentifierHash > &outList) const
std::vector< double > m_etamin
int robId(int hashId) const
void verifyInputsInternal(double &etaminIn, double &etamaxIn, double &phiminIn, double &phimaxIn) const
int layerDiskNumber(int hashId) const
void insertDataElement(int &positionIn, int &numberIn, double &etaminIn, double &etamaxIn, double &phiminIn, double &phimaxIn, IdentifierHash &hashIdIn, uint32_t &robIdIn)
std::list< RegSelectorMapElement > m_barreldataList
std::vector< double > m_etamax
std::vector< double > m_phimin
double etaMax(int hashId) const
void sort(typename std::reverse_iterator< DataModel_detail::iterator< DVL > > beg, typename std::reverse_iterator< DataModel_detail::iterator< DVL > > end, const Compare &comp)
Specialization of sort for DataVector/List.
void findPosition(TYPEID typeinID, bool posORneg, std::list< RegSelectorMapElement >::const_iterator &it) const
std::vector< uint32_t > m_robId
virtual bool isFullscan() const =0
is this a full detector RoI?
void findMaxMinValues(std::list< RegSelectorMapElement > &dataList)
std::list< RegSelectorMapElement > m_negdataList
This is a "hash" representation of an Identifier. This encodes a 32 bit index which can be used to lo...
virtual const IRoiDescriptor * at(int i) const =0
find an RoiDescriptor constituent
StatusCode readTILE(const char *filename)
void regionSelectorRobIdUint(DETID TYPE, double etaminIn, double etamaxIn, double phiminIn, double phimaxIn, std::vector< uint32_t > &outList) const
static void removeDuplicates(std::vector< T > &vec)
useful for removing duplicates if required ...
int hashId(int value) const
std::vector< IdentifierHash > m_hashId
std::vector< double > m_phimax
virtual bool composite() const =0
Super RoI access methods.
double phiMin(int hashId) const