![]() |
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_viewKey |
| Key to write the view container. | |
| 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 112 of file AuxiliaryMeasurementHandler.h.
|
private |
Definition at line 126 of file AuxiliaryMeasurementHandler.h.
Definition at line 24 of file AuxiliaryMeasurementHandler.h.
|
strong |
| Enumerator | |
|---|---|
| ok | |
| emptyKey | |
| recordFail | |
Definition at line 107 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 73 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 130 of file AuxiliaryMeasurementHandler.h.
|
private |
Lambda to access the parent's msg stream.
Definition at line 128 of file AuxiliaryMeasurementHandler.h.
|
private |
Key to write the surfaces associated to the measurements.
Definition at line 140 of file AuxiliaryMeasurementHandler.h.
|
private |
Key to write the view container.
Definition at line 132 of file AuxiliaryMeasurementHandler.h.
|
private |
Key to write the 1D measurements.
Definition at line 134 of file AuxiliaryMeasurementHandler.h.
|
private |
Key to write the 2D measurements.
Definition at line 136 of file AuxiliaryMeasurementHandler.h.
|
private |
Key to write the 2D + time measurements.
Definition at line 138 of file AuxiliaryMeasurementHandler.h.