  | 
  
    ATLAS Offline Software
    
   | 
 
 
 
 
Go to the documentation of this file.
    5 #ifndef TRIGINDETPATTRECOTOOLS_TRIGTRACKSEEDGENERATOR_H 
    6 #define TRIGINDETPATTRECOTOOLS_TRIGTRACKSEEDGENERATOR_H 
   38       return p1->m_pSP->z()<
p2->m_pSP->z();
 
   44       return p1->m_pSP->r()<
p2->m_pSP->r();
 
   50       return p1->m_pSP->r()>
p2->m_pSP->r();
 
   56       return z < 
p->m_pSP->z();
 
   62       return p->m_pSP->z() < 
z;
 
   68       return r < 
p->m_pSP->r();
 
   74       return r < 
p->m_pSP->r();
 
   80       return p->m_pSP->r() < 
r;
 
   86       return p->m_pSP->r() < 
r;
 
   92   std::vector<const INDEXED_SP*> 
d;
 
  100   if(nPhiSlices == 2) {
 
  109     for(
int phiIdx=0;phiIdx<nPhiSlices;phiIdx++) {
 
  120   for(
int i=0;
i<3;
i++) {
 
  129     for(
int i=0;
i<3;
i++) {
 
  148     for(
int i=0;
i<3;
i++) {
 
  156       if((*it).empty()) 
continue;
 
  161       if((*it).empty()) 
continue;
 
  169       if((*it).empty()) 
continue;
 
  177       if((*it).empty()) 
continue;
 
  208     m_layers[layerId].addSpacePoint(phiIdx, 
p);
 
  213       if((*it).m_nSP==0) 
continue;
 
  221       if((*it).m_nSP==0) 
continue;
 
  222       (*it).sortSpacePoints(layerGeometry[layerId].
m_type==0);
 
  229       if((*it).m_nSP==0) 
continue;
 
  230       (*it).sortSpacePoints(layerGeometry[layerId].
m_type==0, layerGeometry[layerId].m_refCoord > 0);
 
  242 InternalSoA() : 
m_spi(0), 
m_spo(0), 
m_r(0), 
m_u(0), 
m_v(0), 
m_t(0), 
m_ti(0), 
m_to(0), 
m_tCov(0), 
m_sorted_sp(0),
 
  280     m_r = 
new double[spSize];
 
  281     m_u = 
new double[spSize];
 
  282     m_v = 
new double[spSize];
 
  283     m_t = 
new double[spSize];
 
  284     m_ti = 
new double[spSize];
 
  285     m_to = 
new double[spSize];
 
  286     m_tCov = 
new double[spSize];
 
  308 typedef std::pair<std::vector<const INDEXED_SP*>::const_iterator, std::vector<const INDEXED_SP*>::const_iterator> 
SP_RANGE;
 
  323   void getSeeds(std::vector<TrigInDetTriplet>&);
 
  358 #endif // not TRIGINDETPATTRECOTOOLS_TRIGTRACKSEEDGENERATOR_H 
  
JetConstituentVector::iterator iterator
 
std::vector< L_PHI_SECTOR > m_layers
 
std::vector< std::vector< const INDEXED_SP * > > m_phiSlices
 
std::vector< TrigInDetTriplet > m_triplets
 
bool operator()(float r, const INDEXED_SP *const &p) const
 
bool validateLayerPairNew(int, int, float, float)
 
TrigTrackSeedGenerator(const TrigTrackSeedGenerator &)=delete
 
const LPhiSector & operator=(const LPhiSector &ps)
 
class TrigTrackSeedGenerator TRIG_TRACK_SEED_GENERATOR
 
void createTripletsNew(const TrigSiSpacePointBase *, int, int, std::vector< TrigInDetTriplet > &, const IRoiDescriptor *)
 
std::pair< std::vector< const INDEXED_SP * >::const_iterator, std::vector< const INDEXED_SP * >::const_iterator > SP_RANGE
 
struct InternalSoA INTERNAL_SOA
 
bool operator()(const INDEXED_SP *const &p, float z) const
 
bool operator()(const INDEXED_SP *const &p, float r) const
 
bool operator()(float z, const INDEXED_SP *const &p) const
 
void sortSpacePoints(bool isBarrel, bool isPositive)
 
std::vector< INDEXED_SP > m_spStorage
 
const TrigSiSpacePointBase * m_pSP
 
void sortSpacePoints(const std::vector< TrigInDetSiLayer > &layerGeometry)
 
TrigTrackSeedGenerator(const TrigCombinatorialSettings &)
 
bool getSpacepointRange(int, const std::vector< const INDEXED_SP * > &, SP_RANGE &)
 
IndexedSP(const IndexedSP &isp)
 
const TrigCombinatorialSettings & m_settings
 
int processSpacepointRange(int, const INDEXED_SP *, bool, const SP_RANGE &, const IRoiDescriptor *)
 
struct LPhi_Storage L_PHI_STORAGE
 
void loadSpacePoints(const std::vector< TrigSiSpacePointBase > &)
 
const TrigSiSpacePointBase ** m_spi
 
void sortSpacePoints(bool isBarrel)
 
std::vector< int > m_outerMarkers
 
bool operator()(const INDEXED_SP *const &p, float r) const
 
void set(const TrigSiSpacePointBase *p, int idx)
 
void addSpacePoint(int phiIndex, const INDEXED_SP *p)
 
const TrigSiSpacePointBase ** m_sorted_sp
 
bool operator()(const INDEXED_SP *p1, const INDEXED_SP *p2)
 
bool operator()(float r, const INDEXED_SP *const &p) const
 
double m_maxDeltaRadiusConf
 
int processSpacepointRangeZv(const INDEXED_SP *, bool, const SP_RANGE &, bool, const float &, const float &)
 
Describes the API of the Region of Ineterest geometry.
 
const TrigSiSpacePointBase ** m_spo
 
~TrigTrackSeedGenerator()
 
std::vector< int > m_threeIndices[3]
 
LPhiSector(int nPhiSlices)
 
void getSeeds(std::vector< TrigInDetTriplet > &)
 
struct IndexedSP INDEXED_SP
 
bool operator()(const INDEXED_SP *p1, const INDEXED_SP *p2)
 
struct LPhiSector L_PHI_SECTOR
 
bool operator()(const INDEXED_SP *p1, const INDEXED_SP *p2)
 
void createTriplets(const TrigSiSpacePointBase *, int, int, std::vector< TrigInDetTriplet > &, const IRoiDescriptor *)
 
std::vector< float > m_maxTau
 
LPhi_Storage(int nPhiSectors, int nLayers)
 
std::vector< std::vector< const INDEXED_SP * > > m_phiThreeSlices
 
void createSeeds(const IRoiDescriptor *)
 
void resize(const int spSize)
 
std::vector< int > m_innerMarkers
 
unsigned int phiIndex(float phi, float binsize)
calculate phi index for a given phi
 
void addSpacePoint(int phiIdx, int layerId, const INDEXED_SP *p)
 
IndexedSP(const TrigSiSpacePointBase *p, int idx)
 
void createConfirmedTriplets(const TrigSiSpacePointBase *, int, int, std::vector< TrigInDetTriplet > &, const IRoiDescriptor *)
 
LPhiSector(const LPhiSector &ps)
 
void storeTriplets(std::vector< TrigInDetTriplet > &)
 
void sortSpacePoints2(const std::vector< TrigInDetSiLayer > &layerGeometry)
 
std::vector< float > m_minTau
 
TrigTrackSeedGenerator & operator=(const TrigTrackSeedGenerator &)=delete