ATLAS Offline Software
Variables
xAOD::ChamberViewConcepts Namespace Reference

Under the assumption that all measurements in an uncalibrated measurement container are sorted by their IdentifierHash which is the unique hash of the associated ReadoutElement, the UnCalibMeasViewer provides a begin & end iterator where all measurements in between share the same identifierHash. More...

Variables

template<typename ObjType >
concept identifyConcept
 Define the concept that the object needs to have an Identifier method
More...
 
template<typename ObjType >
concept identifierHashConcept
 Define the concept that the object needs to have an IdentifierHash method
More...
 
template<class HitObjContainer >
concept ContainerConcept
 

Detailed Description

Under the assumption that all measurements in an uncalibrated measurement container are sorted by their IdentifierHash which is the unique hash of the associated ReadoutElement, the UnCalibMeasViewer provides a begin & end iterator where all measurements in between share the same identifierHash.

That allows for convenient range based for loops restricted over all measurements in chamber. A minimal example of how to use the ChamberMeasViewer is given below.

/// Fetch some pointer to the full measruement container const xAOD::UnCalibMeasurementContainer* allMeasurements{};

ChamberMeasViewer viewer{allMeasurements}; /// Start the loop over the chambers do { for (const xAOD::UnCalibMeasurement meas : viewer) { } } /// Load the hits from the next chamber while(viewer.next());

Variable Documentation

◆ ContainerConcept

template<class HitObjContainer >
concept xAOD::ChamberViewConcepts::ContainerConcept
Initial value:
=
(identifyConcept<typename Acts::RemovePointer_t<typename HitObjContainer::value_type>> ||
identifierHashConcept<typename Acts::RemovePointer_t<typename HitObjContainer::value_type>>)

Definition at line 44 of file ChamberViewer.h.

◆ identifierHashConcept

template<typename ObjType >
concept xAOD::ChamberViewConcepts::identifierHashConcept
Initial value:
= requires(const ObjType theObj) {
theObj.identifierHash();
}

Define the concept that the object needs to have an IdentifierHash method

Definition at line 41 of file ChamberViewer.h.

◆ identifyConcept

template<typename ObjType >
concept xAOD::ChamberViewConcepts::identifyConcept
Initial value:
= requires (const ObjType theObj) {
theObj.identify();
}

Define the concept that the object needs to have an Identifier method

Definition at line 37 of file ChamberViewer.h.

requires
requires requires()
This specialization is used for classes deriving from DataObject.
Definition: Control/AthenaKernel/AthenaKernel/ClassID_traits.h:68