![]() |
ATLAS Offline Software
|
Utility class to handle the creation of the Auxiliary measurement used in an Acts track fit This class declares the additionally written xAOD::AuxiliaryMeasurementContainers to the AvalancheScheduler. More...
#include <AuxiliaryMeasurementHandler.h>
Classes | |
| class | MeasurementProvider |
| Helper struct to create a new pseudo measurement. More... | |
Public Types | |
| enum class | HandleStatus : std::uint8_t { ok = 0 , emptyKey = 1 , recordFail = 2 } |
| using | SurfacePtr_t = xAOD::AuxiliaryMeasurement::SurfacePtr_t |
| using | HandleReturn_t = Acts::Result<MeasurementProvider, HandleStatus> |
Public Member Functions | |
| template<class PropOwner> | |
| AuxiliaryMeasurementHandler (PropOwner *owner) | |
| Constructor taking the pointer to the class holding the object used to declare the data dependency from the WriteHandleKeys to the AvalancheScheduler. | |
| StatusCode | initialize (const std::string &preFix, bool used=true) |
| Initialize the write handle keys. | |
| HandleReturn_t | makeHandle (const EventContext &ctx, const Acts::GeometryContext &gctx) const |
| Creates a new MeasurementProvider and triggers the write of the container backend to StoreGate. | |
Private Types | |
| using | Key_t = SG::WriteHandleKey<xAOD::AuxiliaryMeasurementContainer> |
Private Member Functions | |
| MsgStream & | msg (const MSG::Level lvl) const |
| Return the reference to the msg logging stream. | |
| bool | msgLvl (const MSG::Level lvl) const |
| Returns whether the stream satisfies the logging level. | |
Private Attributes | |
| std::function< MsgStream &(const MSG::Level)> | m_msgPrinter {} |
| Lambda to access the parent's msg stream. | |
| std::function< bool(const MSG::Level)> | m_msgLevel {} |
| Lambda to return the msg level from the parent's msg stream. | |
| Key_t | m_writeKey1D |
| Key to write the 1D measurements. | |
| Key_t | m_writeKey2D |
| Key to write the 2D measurements. | |
| Key_t | m_writeKey3D |
| Key to write the 2D + time measurements. | |
| SG::WriteHandleKey< xAOD::TrackSurfaceContainer > | m_surfaceKey |
| Key to write the surfaces associated to the measurements. | |
Utility class to handle the creation of the Auxiliary measurement used in an Acts track fit This class declares the additionally written xAOD::AuxiliaryMeasurementContainers to the AvalancheScheduler.
Per event, the user creates an instance of the MeasurementProvider which setups the storage backend for the measurements and writes the containers to StoreGate. Auxiliary measurements are created by calling the newMeasurement method.
Definition at line 22 of file AuxiliaryMeasurementHandler.h.
| using ActsTrk::AuxiliaryMeasurementHandler::HandleReturn_t = Acts::Result<MeasurementProvider, HandleStatus> |
Definition at line 98 of file AuxiliaryMeasurementHandler.h.
|
private |
Definition at line 112 of file AuxiliaryMeasurementHandler.h.
Definition at line 24 of file AuxiliaryMeasurementHandler.h.
|
strong |
| Enumerator | |
|---|---|
| ok | |
| emptyKey | |
| recordFail | |
Definition at line 93 of file AuxiliaryMeasurementHandler.h.
| ActsTrk::AuxiliaryMeasurementHandler::AuxiliaryMeasurementHandler | ( | PropOwner * | owner | ) |
Constructor taking the pointer to the class holding the object used to declare the data dependency from the WriteHandleKeys to the AvalancheScheduler.
The object should be defined in the header like ActsTrk::AuxiliaryMeasurementHandler m_pseudoHandle{this};
| StatusCode ActsTrk::AuxiliaryMeasurementHandler::initialize | ( | const std::string & | preFix, |
| bool | used = true ) |
Initialize the write handle keys.
| preFix | Common prefix to be put in front of all keys |
| used | Flag indicating whether the auxiliary keys are used at all |
Definition at line 25 of file AuxiliaryMeasurementHandler.cxx.
| AuxiliaryMeasurementHandler::HandleReturn_t ActsTrk::AuxiliaryMeasurementHandler::makeHandle | ( | const EventContext & | ctx, |
| const Acts::GeometryContext & | gctx ) const |
Creates a new MeasurementProvider and triggers the write of the container backend to StoreGate.
The user needs to provide a reference to a mutable xAOD::TrackSurfaceContainer where the persistified surfaces are appended to. The client needs to ensure that the lifetime of the surface container prevails the provider's lifetime.
| ctx | EventContext to write the containers to store gate |
| gctx | The geometry context to place the surface in space |
Definition at line 68 of file AuxiliaryMeasurementHandler.cxx.
|
private |
Return the reference to the msg logging stream.
| lvl | Logging level to be applied |
Definition at line 18 of file AuxiliaryMeasurementHandler.cxx.
|
private |
Returns whether the stream satisfies the logging level.
Definition at line 22 of file AuxiliaryMeasurementHandler.cxx.
|
private |
Lambda to return the msg level from the parent's msg stream.
Definition at line 116 of file AuxiliaryMeasurementHandler.h.
|
private |
Lambda to access the parent's msg stream.
Definition at line 114 of file AuxiliaryMeasurementHandler.h.
|
private |
Key to write the surfaces associated to the measurements.
Definition at line 124 of file AuxiliaryMeasurementHandler.h.
|
private |
Key to write the 1D measurements.
Definition at line 118 of file AuxiliaryMeasurementHandler.h.
|
private |
Key to write the 2D measurements.
Definition at line 120 of file AuxiliaryMeasurementHandler.h.
|
private |
Key to write the 2D + time measurements.
Definition at line 122 of file AuxiliaryMeasurementHandler.h.