|
ATLAS Offline Software
|
Go to the documentation of this file.
14 #ifndef TRT_SeededSpacePointFinder_ATL_H
15 #define TRT_SeededSpacePointFinder_ATL_H
22 #include "GaudiKernel/ServiceHandle.h"
44 class SiSpacePointsSeed;
51 bool operator()(std::pair<const Trk::SpacePoint*,int> sp1, std::pair<const Trk::SpacePoint*,int> sp2)
const
52 {
return (sp1.first)->r() > (sp2.first)->
r();}
80 (
const std::string&,
const std::string&,
const IInterface*);
89 std::unique_ptr<InDet::ITRT_SeededSpacePointFinder::IEventData>
newEvent ()
const;
90 std::unique_ptr<InDet::ITRT_SeededSpacePointFinder::IEventData>
newRegion
91 (
const std::vector<IdentifierHash>&,
92 const std::vector<IdentifierHash>&)
const;
98 std::list<std::pair<const Trk::SpacePoint*,const Trk::SpacePoint*> >
find2Sp (
const EventContext& ctx,
112 MsgStream&
dump (MsgStream &
out)
const;
113 std::ostream&
dump (std::ostream&
out)
const;
121 StringProperty
m_fieldmode{
this,
"MagneticFieldMode",
"MapSolenoid",
122 "Magnetic field mode"};
134 DoubleProperty
m_ptmin{
this,
"pTmin", 500.,
"Minimum pT cut"};
145 DoubleProperty
m_xiC{
this,
"Xi2C", 100.,
"qOverP based chi2 cut"};
146 DoubleProperty
m_xiTC{
this,
"Xi2TC", 100.,
"theta based chi2 cut"};
147 DoubleProperty
m_xiFC{
this,
"Xi2FC", 100.,
"phi based chi2 cut"};
148 BooleanProperty
m_search{
this,
"NeighborSearch",
true,
"Do full neighbor search"};
150 "Load full Si space point container"};
152 "Disable seed selection cuts during reconstruction of cosmics tracks"};
184 std::list<std::pair<const Trk::SpacePoint*,int> >
m_rf_Sorted[530] ;
203 {
this,
"PRDtoTrackMap",
""};
207 "fieldCondObj",
"Name of the Magnetic Field conditions object key"};
218 void fillLists (std::vector< std::vector<const Trk::SpacePoint*> > &r_Sorted,
227 std::list<std::pair<const Trk::SpacePoint*,const Trk::SpacePoint*> > &outputListBuffer,
257 bool cutTPb(
const invar_bypass_struct &invar_bypass,
const std::vector<bypass_struct> &prod_bypass,
long,
long,
double)
const;
274 #endif // TRT_SeededSpacePointFinder_ATL_H
DoubleProperty m_xiC
Max R-z direction cut
SG::ReadHandleKey< SpacePointOverlapCollection > m_spacepointsOverlapname
Base for a helper class to pass mutable storage to tools.
StringProperty m_fieldmode
Protected data and methods
TRT_SeededSpacePointFinder_ATL(const std::string &, const std::string &, const IInterface *)
Standard tool methods
SG::ReadHandleKey< SpacePointContainer > m_spacepointsPixname
Space points containers
static constexpr double m_r_rstep
Maximum STC radius to be searched
const SiSpacePointsSeed * next(ITRT_SeededSpacePointFinder::IEventData &event_data) const
Iterator through seed collection.Not used in this implementation.
std::unique_ptr< InDet::ITRT_SeededSpacePointFinder::IEventData > newEvent() const
Method to initialize tool for new event
void fillLists(std::vector< std::vector< const Trk::SpacePoint * > > &r_Sorted, InDet::TRT_SeededSpacePointFinder_ATL::EventData &event_data) const
Fill the space point container lists at beginning of each event.
Sorting function according to space point radial position.
void buildFrameWork(double r_rmax, double r_rstep, double ptmin)
const SCT_ID * m_sctId
Magnetic field properties
static constexpr double m_dzdrmin
Min radius to search for SP pairs
virtual ~TRT_SeededSpacePointFinder_ATL()
static constexpr double m_r_rmin
bool cutTPb(const invar_bypass_struct &invar_bypass, const std::vector< bypass_struct > &prod_bypass, long, long, double) const
Cut on chi2 based on TRT segment qOverP, theta and phi track parameters.
static constexpr double m_r2min
Min radius of last SCT layer
virtual StatusCode finalize()
Trk::MagneticFieldProperties m_fieldprop
std::list< std::pair< const Trk::SpacePoint *, int > > m_rf_Sorted[530]
::StatusCode StatusCode
StatusCode definition for legacy code.
virtual StatusCode initialize()
std::unique_ptr< InDet::ITRT_SeededSpacePointFinder::IEventData > newRegion(const std::vector< IdentifierHash > &, const std::vector< IdentifierHash > &) const
static constexpr double m_dzdrmax
Min R-z direction cut
SG::ReadHandleKey< SpacePointContainer > m_spacepointsSCTname
bool operator()(std::pair< const Trk::SpacePoint *, int > sp1, std::pair< const Trk::SpacePoint *, int > sp2) const
MsgStream & dump(MsgStream &out) const
Print internal tool parameters and status
SG::ReadHandleKey< Trk::PRDtoTrackMap > m_prdToTrackMap
void geoInfo(const Trk::SpacePoint *, int &, int &) const
Obtain geo model info for a specific space point
static constexpr double m_r_rmax
Minimum SCT radius to be searched
BooleanProperty m_loadFull
void magneticFieldInit()
Get magnetic field properties
MsgStream & dumpConditions(MsgStream &out) const
Protected methods
BooleanProperty m_doCosmics
std::list< std::pair< const Trk::SpacePoint *, int > > m_newRfi_Sorted
SG::ReadCondHandleKey< AtlasFieldCacheCondObj > m_fieldCondObjInputKey
static constexpr double m_r1max
Step size for space point storage
DoubleProperty m_ptmin
Seed selection criteria
void production2Spb(const EventContext &ctx, const Trk::TrackParameters &, int, std::list< std::pair< const Trk::SpacePoint *, const Trk::SpacePoint * > > &outputListBuffer, InDet::TRT_SeededSpacePointFinder_ATL::EventData &event_data) const
Form possible space point combinations within allowed radial and pseudorapidity ranges.
MsgStream & dumpEvent(MsgStream &out, InDet::TRT_SeededSpacePointFinder_ATL::EventData &event_data) const
std::list< std::pair< const Trk::SpacePoint *, const Trk::SpacePoint * > > find2Sp(const EventContext &ctx, const Trk::TrackParameters &, ITRT_SeededSpacePointFinder::IEventData &event_data) const
Main method of seed production
static constexpr double m_r12min
Max radius of last SCT layer