ATLAS Offline Software
List of all members
InDet::ISiDetElementsRoadMaker Class Referenceabstract

#include <ISiDetElementsRoadMaker.h>

Inheritance diagram for InDet::ISiDetElementsRoadMaker:
Collaboration diagram for InDet::ISiDetElementsRoadMaker:

Public Member Functions

InterfaceID
 DeclareInterfaceID (ISiDetElementsRoadMaker, 1, 0)
 
Main methods for road builder
virtual void detElementsRoad (std::deque< Amg::Vector3D > &globalPositions, std::vector< const InDetDD::SiDetectorElement * > &Road, bool testDirection, InDet::SiDetElementRoadMakerData_xk &roadMakerData, const EventContext &ctx) const =0
 This signature assumes you already have a list of positions along the trajectory. More...
 
virtual void detElementsRoad (const EventContext &ctx, MagField::AtlasFieldCache &fieldCache, const Trk::TrackParameters &Tp, Trk::PropDirection direction, std::vector< const InDetDD::SiDetectorElement * > &Road, InDet::SiDetElementRoadMakerData_xk &roadMakerData) const =0
 This is the signature used in most ATLAS clients. More...
 
Print internal tool parameters and status
virtual MsgStream & dump (MsgStream &out) const =0
 
virtual std::ostream & dump (std::ostream &out) const =0
 

Detailed Description

Base class for detector elements road builder in Pixels and SCT. All detector elements should be destributed in propagation order.

Definition at line 42 of file ISiDetElementsRoadMaker.h.

Member Function Documentation

◆ DeclareInterfaceID()

InDet::ISiDetElementsRoadMaker::DeclareInterfaceID ( ISiDetElementsRoadMaker  ,
,
 
)

◆ detElementsRoad() [1/2]

virtual void InDet::ISiDetElementsRoadMaker::detElementsRoad ( const EventContext &  ctx,
MagField::AtlasFieldCache fieldCache,
const Trk::TrackParameters Tp,
Trk::PropDirection  direction,
std::vector< const InDetDD::SiDetectorElement * > &  Road,
InDet::SiDetElementRoadMakerData_xk roadMakerData 
) const
pure virtual

This is the signature used in most ATLAS clients.

Parameters
[in]ctxEvent context
[in]fieldCacheMagnetic field cache
[in]TpTrack parameter hypothesis used for road building. For example obtained from a seed. Will be used to populate a set of space points along the expected trajectory, and to search for detector elements along this linearised trajectory using the signature above
[in]directionDirection of propagation - either along (inside out) or against (cosmic) momentum.
[out]RoadList to be populated with the elements of the search road. Will be sorted along the trajectory.
[in,out]roadMakerDataevent data object used to cache information during an event in a thread-safe way

◆ detElementsRoad() [2/2]

virtual void InDet::ISiDetElementsRoadMaker::detElementsRoad ( std::deque< Amg::Vector3D > &  globalPositions,
std::vector< const InDetDD::SiDetectorElement * > &  Road,
bool  testDirection,
InDet::SiDetElementRoadMakerData_xk roadMakerData,
const EventContext &  ctx 
) const
pure virtual

This signature assumes you already have a list of positions along the trajectory.

It will look for detector elements compatible with being crossed by the linearised trajectory provided and fill those into the 'Road' argument. If 'testDirection' is used, we only fill detector elements encountered while traversing in the positive direction.

Parameters
[in]globalPositionsset of points along the trajectory. Will linearise between them.
[out]Roadvector to be populated with the elements of the search road. Will be sorted along the trajectory.
[in]testDirectionIf set, avoid adding detector elements encountered only when travelling in the negative direction. Set true for inside-out tracking, false for cosmic tracking.
[in,out]roadMakerDataevent data object used to cache information during an event in a thread-safe way

◆ dump() [1/2]

virtual MsgStream& InDet::ISiDetElementsRoadMaker::dump ( MsgStream &  out) const
pure virtual

◆ dump() [2/2]

virtual std::ostream& InDet::ISiDetElementsRoadMaker::dump ( std::ostream &  out) const
pure virtual

The documentation for this class was generated from the following file: