|
ATLAS Offline Software
|
#include <TrackStateOnSurfaceDecorator.h>
|
| TrackStateOnSurfaceDecorator (const std::string &t, const std::string &n, const IInterface *p) |
|
StatusCode | initialize () |
|
StatusCode | finalize () |
|
virtual StatusCode | addBranches () const |
| Pass the thinning service
More...
|
|
ServiceHandle< StoreGateSvc > & | evtStore () |
| The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
const ServiceHandle< StoreGateSvc > & | evtStore () const |
| The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
const ServiceHandle< StoreGateSvc > & | detStore () const |
| The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
virtual StatusCode | sysInitialize () override |
| Perform system initialization for an algorithm. More...
|
|
virtual StatusCode | sysStart () override |
| Handle START transition. More...
|
|
virtual std::vector< Gaudi::DataHandle * > | inputHandles () const override |
| Return this algorithm's input handles. More...
|
|
virtual std::vector< Gaudi::DataHandle * > | outputHandles () const override |
| Return this algorithm's output handles. More...
|
|
Gaudi::Details::PropertyBase & | declareProperty (Gaudi::Property< T > &t) |
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleKey &hndl, const std::string &doc, const SG::VarHandleKeyType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleBase &hndl, const std::string &doc, const SG::VarHandleType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleKeyArray &hndArr, const std::string &doc, const SG::VarHandleKeyArrayType &) |
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, T &property, const std::string &doc, const SG::NotHandleType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, T &property, const std::string &doc="none") |
| Declare a new Gaudi property. More...
|
|
void | updateVHKA (Gaudi::Details::PropertyBase &) |
|
MsgStream & | msg () const |
|
MsgStream & | msg (const MSG::Level lvl) const |
|
bool | msgLvl (const MSG::Level lvl) const |
|
|
enum | ETRTFloatDecor {
kTRTdEdxDecor,
kTRTusedHitsDecor,
kTRTdEdx_noHT_divByLDecor,
kTRTusedHits_noHT_divByLDecor,
kNTRTFloatDecor
} |
|
enum | EPixFloatDecorKeys {
kTrkIBLXDecor,
kTrkIBLYDecor,
kTrkIBLZDecor,
kTrkBLXDecor,
kTrkBLYDecor,
kTrkBLZDecor,
kTrkL1XDecor,
kTrkL1YDecor,
kTrkL1ZDecor,
kTrkL2XDecor,
kTrkL2YDecor,
kTrkL2ZDecor,
kNPixFloatDecor
} |
|
typedef ServiceHandle< StoreGateSvc > | StoreGateSvc_t |
|
|
bool | m_isSimulation |
|
bool | m_storeHoles |
|
bool | m_storeOutliers |
|
bool | m_storeTRT |
|
bool | m_storeSCT |
|
bool | m_storePixel |
|
bool | m_addPulls |
|
bool | m_addSurfaceInfo |
|
bool | m_addPRD |
|
bool | m_addExtraEventInfo |
|
SG::ReadHandleKey< xAOD::EventInfo > | m_eventInfoKey { this, "EventInfoKey", "EventInfo", "" } |
|
Gaudi::Property< std::string > | m_sgName { this, "DecorationPrefix", "IDDET1_",""} |
|
SG::ReadHandleKey< xAOD::TrackParticleContainer > | m_containerName { this, "ContainerName", "InDetTrackParticles", "" } |
|
SG::ReadHandleKey< ComTime > | m_trtPhaseKey { this,"TRTPhaseKey","TRT_Phase", ""} |
|
SG::ReadHandleKey< std::vector< unsigned int > > | m_pixelMapName { this, "PixelMapName", "PixelClustersOffsets" , ""} |
|
SG::ReadHandleKey< std::vector< unsigned int > > | m_sctMapName { this, "SctMapName", "SCT_ClustersOffsets" , ""} |
|
SG::ReadHandleKey< std::vector< unsigned int > > | m_trtMapName { this, "TrtMapName", "TRT_DriftCirclesOffsets" , ""} |
|
SG::ReadHandleKey< xAOD::TrackMeasurementValidationContainer > | m_pixelClustersName {this, "PixelClustersName", "PixelClusters" ,"" } |
|
SG::ReadHandleKey< xAOD::TrackMeasurementValidationContainer > | m_sctClustersName {this, "SctClustersName", "SCT_Clusters" ,"" } |
|
SG::ReadHandleKey< xAOD::TrackMeasurementValidationContainer > | m_trtDCName {this, "TrtDriftCirclesName", "TRT_DriftCircles" ,"" } |
|
SG::ReadHandleKey< Trk::PRDtoTrackMap > | m_prdToTrackMap { this,"PRDtoTrackMap","","option PRD-to-track association"} |
|
SG::WriteHandleKey< xAOD::TrackStateValidationContainer > | m_pixelMsosName { this, "PixelMsosName", "PixelMSOSs", "" } |
|
SG::WriteHandleKey< xAOD::TrackStateValidationContainer > | m_sctMsosName { this, "SctMsosName", "SCT_MSOSs", "" } |
|
SG::WriteHandleKey< xAOD::TrackStateValidationContainer > | m_trtMsosName { this, "TrtMsosName", "TRT_MSOSs", ""} |
|
SG::ReadCondHandleKey< InDetDD::SiDetectorElementCollection > | m_SCTDetEleCollKey {this, "SCTDetEleCollKey", "SCT_DetectorElementCollection", "Key of SiDetectorElementCollection for SCT"} |
|
const AtlasDetectorID * | m_idHelper |
|
const PixelID * | m_pixId |
|
const SCT_ID * | m_sctId |
|
const TRT_ID * | m_trtId |
|
ToolHandle< Trk::IUpdator > | m_updator |
|
ToolHandle< Trk::IResidualPullCalculator > | m_residualPullCalculator |
|
ToolHandle< Trk::ITrackHoleSearchTool > | m_holeSearchTool |
|
ToolHandle< Trk::IExtrapolator > | m_extrapolator |
|
ToolHandle< ITRT_CalDbTool > | m_trtcaldbTool |
|
ToolHandle< ITRT_ToT_dEdx > | m_TRTdEdxTool |
|
std::vector< SG::WriteDecorHandleKey< xAOD::EventInfo > > | m_trtPhaseDecorKey |
|
std::vector< SG::WriteDecorHandleKey< xAOD::TrackParticleContainer > > | m_trackTRTFloatDecorKeys |
|
std::vector< SG::WriteDecorHandleKey< xAOD::TrackParticleContainer > > | m_trackPixFloatDecorKeys |
|
SG::WriteDecorHandleKey< xAOD::TrackParticleContainer > | m_trackTSOSMOSLinkDecorKey |
|
Gaudi::Property< std::vector< float > > | m_pixelLayerRadii {this, "PixelLayerRadii", {29.5,50.5,88.5,122.5}, "Radii to extrapolate to for estimating track position on layers" } |
|
StoreGateSvc_t | m_evtStore |
| Pointer to StoreGate (event store by default) More...
|
|
StoreGateSvc_t | m_detStore |
| Pointer to StoreGate (detector store by default) More...
|
|
std::vector< SG::VarHandleKeyArray * > | m_vhka |
|
bool | m_varHandleArraysDeclared |
|
◆ StoreGateSvc_t
◆ EPixFloatDecorKeys
Enumerator |
---|
kTrkIBLXDecor | |
kTrkIBLYDecor | |
kTrkIBLZDecor | |
kTrkBLXDecor | |
kTrkBLYDecor | |
kTrkBLZDecor | |
kTrkL1XDecor | |
kTrkL1YDecor | |
kTrkL1ZDecor | |
kTrkL2XDecor | |
kTrkL2YDecor | |
kTrkL2ZDecor | |
kNPixFloatDecor | |
Definition at line 139 of file TrackStateOnSurfaceDecorator.h.
◆ ETRTFloatDecor
Enumerator |
---|
kTRTdEdxDecor | |
kTRTusedHitsDecor | |
kTRTdEdx_noHT_divByLDecor | |
kTRTusedHits_noHT_divByLDecor | |
kNTRTFloatDecor | |
Definition at line 133 of file TrackStateOnSurfaceDecorator.h.
◆ TrackStateOnSurfaceDecorator()
DerivationFramework::TrackStateOnSurfaceDecorator::TrackStateOnSurfaceDecorator |
( |
const std::string & |
t, |
|
|
const std::string & |
n, |
|
|
const IInterface * |
p |
|
) |
| |
◆ addBranches()
StatusCode DerivationFramework::TrackStateOnSurfaceDecorator::addBranches |
( |
| ) |
const |
|
virtual |
Pass the thinning service
Implements DerivationFramework::IAugmentationTool.
Definition at line 216 of file TrackStateOnSurfaceDecorator.cxx.
218 const EventContext& ctx = Gaudi::Hive::currentContext();
219 ATH_MSG_DEBUG(
"Adding TSOS decorations the track particles");
225 if( ! tracks.isValid() ) {
227 return StatusCode::FAILURE;
253 if (!eventInfo.isValid()) {
255 return StatusCode::FAILURE;
260 float trtPhase_time=0.;
261 if (!trtPhase.isValid()) {
264 trtPhase_time = trtPhase->getTime();
267 decorTRTPhase(*eventInfo) = trtPhase_time;
280 if (msosPixel.
record(std::make_unique<xAOD::TrackStateValidationContainer>(),
281 std::make_unique<xAOD::TrackStateValidationAuxContainer>()).isFailure()) {
283 return StatusCode::FAILURE;
292 if (msosSCT.
record(std::make_unique<xAOD::TrackStateValidationContainer>(),
293 std::make_unique<xAOD::TrackStateValidationAuxContainer>()).isFailure()) {
295 return StatusCode::FAILURE;
304 if (msosTRT.
record(std::make_unique<xAOD::TrackStateValidationContainer>(),
305 std::make_unique<xAOD::TrackStateValidationAuxContainer>()).isFailure()) {
307 return StatusCode::FAILURE;
316 if (!prd_to_track_map.
isValid()) {
319 prd_to_track_map_cptr = prd_to_track_map.
cptr();
322 std::vector<SG::WriteDecorHandle<xAOD::TrackParticleContainer,float> > trackTRTFloatDecorators;
326 std::vector<SG::WriteDecorHandle<xAOD::TrackParticleContainer,float> >
329 for (
const auto *
const track : *tracks) {
333 if( !
track->trackLink().isValid() ||
track->track() ==
nullptr ) {
343 std::vector< ElementLink< xAOD::TrackStateValidationContainer > > msosLink;
363 bool allExtrapolationsSucceded =
true;
368 ATH_MSG_VERBOSE(
"Start radius for extrapolating to layers: "<<startRadius);
371 std::unique_ptr<const Trk::TrackParameters> outputParamsIBL
383 std::unique_ptr<const Trk::TrackParameters> outputParamsBL
395 std::unique_ptr<const Trk::TrackParameters> outputParamsL1
407 std::unique_ptr<const Trk::TrackParameters> outputParamsL2
416 if (outputParamsIBL.get()) {
417 trackPixFloatDecorators[
kTrkIBLXDecor](*track) = outputParamsIBL->position().x();
418 trackPixFloatDecorators[
kTrkIBLYDecor](*track) = outputParamsIBL->position().y();
419 trackPixFloatDecorators[
kTrkIBLZDecor](*track) = outputParamsIBL->position().z();
422 allExtrapolationsSucceded =
false;
429 if (outputParamsBL.get()) {
430 trackPixFloatDecorators[
kTrkBLXDecor](*track) = outputParamsBL->position().x();
431 trackPixFloatDecorators[
kTrkBLYDecor](*track) = outputParamsBL->position().y();
432 trackPixFloatDecorators[
kTrkBLZDecor](*track) = outputParamsBL->position().z();
435 allExtrapolationsSucceded =
false;
442 if (outputParamsL1.get()) {
443 trackPixFloatDecorators[
kTrkL1XDecor](*track) = outputParamsL1->position().x();
444 trackPixFloatDecorators[
kTrkL1YDecor](*track) = outputParamsL1->position().y();
445 trackPixFloatDecorators[
kTrkL1ZDecor](*track) = outputParamsL1->position().z();
448 allExtrapolationsSucceded =
false;
455 if (outputParamsL2.get()) {
456 trackPixFloatDecorators[
kTrkL2XDecor](*track) = outputParamsL2->position().x();
457 trackPixFloatDecorators[
kTrkL2YDecor](*track) = outputParamsL2->position().y();
458 trackPixFloatDecorators[
kTrkL2ZDecor](*track) = outputParamsL2->position().z();
461 allExtrapolationsSucceded =
false;
467 if(!allExtrapolationsSucceded)
ATH_MSG_WARNING(
"At least one extrapolation to a Pixel layer failed!");
470 ATH_MSG_WARNING(
"No perigee TrackParameters found - filling positions on layers to (0,0,0)!");
488 std::vector<const Trk::TrackStateOnSurface*> tsoss;
493 tsoss.push_back(trackState);
496 std::unique_ptr<const Trk::TrackStates>
holes;
500 tsoss.push_back(
hole);
504 stable_sort( tsoss.begin(), tsoss.end(), CompFunc );
511 for (
const auto& trackState: tsoss){
529 if(!trackState->surface().associatedDetectorElement()){
534 Identifier surfaceID = trackState->surface().associatedDetectorElement()->identify();
559 if( !isPixel && !isSCT && !isTRT ){
574 elink.toPersistent();
575 msosLink.push_back(elink);
584 elink.toPersistent();
585 msosLink.push_back(elink);
594 elink.toPersistent();
595 msosLink.push_back(elink);
620 double lTheta=-1000., lPhi=-1000.;
624 errDCAcc(*msos) = -1 ;
634 HitZAcc(*msos)=-3000;
636 rTrkWireAcc(*msos)=-1;
640 HitZAcc(*msos)=-3000;
642 rTrkWireAcc(*msos)=-1;
647 HitZAcc(*msos)=gp.z();
648 HitRAcc(*msos)=gp.perp();
649 rTrkWireAcc(*msos)= fabs(trackState->trackParameters()->parameters()[
Trk::driftRadius]);
650 lTheta = trackState->trackParameters()->parameters()[
Trk::theta];
651 lPhi = trackState->trackParameters()->parameters()[
Trk::phi];
656 rTrkWireAcc(*msos)=0;
663 if (prd_to_track_map_cptr) {
668 isSharedAcc(*msos) = isShared;
675 std::unique_ptr<const Trk::TrackParameters> extrap(
m_extrapolator->extrapolateTrack(ctx,*trkTrack,trackState->surface()) );
682 ATH_MSG_DEBUG(
" Original position " <<
tp->parameters()[0] <<
" " <<
tp->parameters()[1]);
683 ATH_MSG_DEBUG(
"Extrapolated position " << extrap->parameters()[0] <<
" " << extrap->parameters()[1]);
699 if (
side && (isSCT || isPixel)) {
705 float trketacomp = mytrack.dot(myetaax);
706 float trkphicomp = mytrack.dot(myphiax);
707 float trknormcomp = mytrack.dot(mynormal);
709 ATH_MSG_DEBUG(
" Original incident angle " << trketacomp <<
" " << trkphicomp <<
" " << trknormcomp);
712 float trketacompX = metrack.dot(myetaax);
713 float trkphicompX = metrack.dot(myphiax);
714 float trknormcompX = metrack.dot(mynormal);
715 ATH_MSG_DEBUG(
"Extrapolated incident angle " << trketacompX <<
" " << trkphicompX <<
" " << trknormcompX);
717 msos->
setLocalAngles( atan2(trketacomp,trknormcomp), atan2(trkphicomp,trknormcomp) );
722 float trketacompX = metrack.dot(myetaax);
723 float trkphicompX = metrack.dot(myphiax);
724 float trknormcompX = metrack.dot(mynormal);
725 msos->
setLocalAngles( atan2(trketacompX,trknormcompX), atan2(trkphicompX,trknormcompX) );
730 if(!measurement) {
continue; }
732 if (isTRT && !trtDCOffsets.
isValid() && !trtDCs.
isValid()) {
continue; }
733 if (isSCT && !sctClusterOffsets.
isValid() && !sctClusters.
isValid()) {
continue; }
734 if (isPixel && !pixelClusterOffsets.
isValid() && !pixelClusters.
isValid()) {
continue; }
765 driftTimeAcc(*msos) = rtr->
drifttime(fabs(
tp->parameters()[0]));
769 driftTimeAcc(*msos) = rtr->
drifttime(fabs(extrap->parameters()[0]));
779 std::optional<Trk::ResidualPull> biased;
780 std::optional<Trk::ResidualPull> unbiased;
787 if(unbiasedTp.get()) {
826 dectsos_msosLink( *
track ) = msosLink;
832 return StatusCode::SUCCESS;
◆ buildElementLink()
◆ declareGaudiProperty() [1/4]
specialization for handling Gaudi::Property<SG::VarHandleKeyArray>
Definition at line 170 of file AthCommonDataStore.h.
175 hndl.documentation());
◆ declareGaudiProperty() [2/4]
specialization for handling Gaudi::Property<SG::VarHandleKey>
Definition at line 156 of file AthCommonDataStore.h.
161 hndl.documentation());
◆ declareGaudiProperty() [3/4]
specialization for handling Gaudi::Property<SG::VarHandleBase>
Definition at line 184 of file AthCommonDataStore.h.
189 hndl.documentation());
◆ declareGaudiProperty() [4/4]
◆ declareProperty() [1/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
hndl | Object holding the property value. |
doc | Documentation string for the property. |
This is the version for types that derive from SG::VarHandleBase
. The property value object is put on the input and output lists as appropriate; then we forward to the base class.
Definition at line 245 of file AthCommonDataStore.h.
250 this->declare(hndl.
vhKey());
251 hndl.
vhKey().setOwner(
this);
◆ declareProperty() [2/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
hndl | Object holding the property value. |
doc | Documentation string for the property. |
This is the version for types that derive from SG::VarHandleKey
. The property value object is put on the input and output lists as appropriate; then we forward to the base class.
Definition at line 221 of file AthCommonDataStore.h.
◆ declareProperty() [3/6]
◆ declareProperty() [4/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
property | Object holding the property value. |
doc | Documentation string for the property. |
This is the generic version, for types that do not derive from SG::VarHandleKey
. It just forwards to the base class version of declareProperty
.
Definition at line 333 of file AthCommonDataStore.h.
◆ declareProperty() [5/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
property | Object holding the property value. |
doc | Documentation string for the property. |
This dispatches to either the generic declareProperty
or the one for VarHandle/Key/KeyArray.
Definition at line 352 of file AthCommonDataStore.h.
◆ declareProperty() [6/6]
◆ detStore()
◆ evtStore() [1/2]
◆ evtStore() [2/2]
◆ extraDeps_update_handler()
Add StoreName to extra input/output deps as needed.
use the logic of the VarHandleKey to parse the DataObjID keys supplied via the ExtraInputs and ExtraOuputs Properties to add the StoreName if it's not explicitly given
◆ finalize()
StatusCode DerivationFramework::TrackStateOnSurfaceDecorator::finalize |
( |
| ) |
|
◆ initialize()
StatusCode DerivationFramework::TrackStateOnSurfaceDecorator::initialize |
( |
| ) |
|
Definition at line 102 of file TrackStateOnSurfaceDecorator.cxx.
107 ATH_MSG_ERROR(
"No decoration prefix name provided for the output of TrackStateOnSurfaceDecorator! Use the variable DecorationPrefix to properly set a prefix.");
108 return StatusCode::FAILURE;
114 ATH_MSG_ERROR(
"No TrackParticle collection provided for TrackStateOnSurfaceDecorator!");
115 return StatusCode::FAILURE;
123 return StatusCode::FAILURE;
128 return StatusCode::FAILURE;
133 return StatusCode::FAILURE;
138 return StatusCode::FAILURE;
157 std::vector<std::string> decor_names{
"TrtPhaseTime"};
158 std::vector<SG::WriteDecorHandleKey<xAOD::EventInfo> > decor_key_out;
163 std::vector<std::string>
names;
185 std::vector<std::string>
names;
207 return StatusCode::SUCCESS;
◆ inputHandles()
Return this algorithm's input handles.
We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.
◆ interfaceID()
static const InterfaceID& DerivationFramework::IAugmentationTool::interfaceID |
( |
| ) |
|
|
inlinestaticinherited |
AlgTool interface methods.
Definition at line 31 of file IAugmentationTool.h.
31 {
return IID_IAugmentationTool; }
◆ msg() [1/2]
◆ msg() [2/2]
◆ msgLvl()
◆ outputHandles()
Return this algorithm's output handles.
We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.
◆ renounce()
◆ renounceArray()
◆ sysInitialize()
◆ sysStart()
Handle START transition.
We override this in order to make sure that conditions handle keys can cache a pointer to the conditions container.
◆ updateVHKA()
◆ m_addExtraEventInfo
bool DerivationFramework::TrackStateOnSurfaceDecorator::m_addExtraEventInfo |
|
private |
◆ m_addPRD
bool DerivationFramework::TrackStateOnSurfaceDecorator::m_addPRD |
|
private |
◆ m_addPulls
bool DerivationFramework::TrackStateOnSurfaceDecorator::m_addPulls |
|
private |
◆ m_addSurfaceInfo
bool DerivationFramework::TrackStateOnSurfaceDecorator::m_addSurfaceInfo |
|
private |
◆ m_containerName
◆ m_detStore
◆ m_eventInfoKey
◆ m_evtStore
◆ m_extrapolator
ToolHandle<Trk::IExtrapolator> DerivationFramework::TrackStateOnSurfaceDecorator::m_extrapolator |
|
private |
◆ m_holeSearchTool
◆ m_idHelper
◆ m_isSimulation
bool DerivationFramework::TrackStateOnSurfaceDecorator::m_isSimulation |
|
private |
◆ m_pixelClustersName
◆ m_pixelLayerRadii
Gaudi::Property< std::vector<float> > DerivationFramework::TrackStateOnSurfaceDecorator::m_pixelLayerRadii {this, "PixelLayerRadii", {29.5,50.5,88.5,122.5}, "Radii to extrapolate to for estimating track position on layers" } |
|
private |
◆ m_pixelMapName
SG::ReadHandleKey<std::vector<unsigned int> > DerivationFramework::TrackStateOnSurfaceDecorator::m_pixelMapName { this, "PixelMapName", "PixelClustersOffsets" , ""} |
|
private |
◆ m_pixelMsosName
◆ m_pixId
const PixelID* DerivationFramework::TrackStateOnSurfaceDecorator::m_pixId |
|
private |
◆ m_prdToTrackMap
◆ m_residualPullCalculator
◆ m_sctClustersName
◆ m_SCTDetEleCollKey
◆ m_sctId
const SCT_ID* DerivationFramework::TrackStateOnSurfaceDecorator::m_sctId |
|
private |
◆ m_sctMapName
SG::ReadHandleKey<std::vector<unsigned int> > DerivationFramework::TrackStateOnSurfaceDecorator::m_sctMapName { this, "SctMapName", "SCT_ClustersOffsets" , ""} |
|
private |
◆ m_sctMsosName
◆ m_sgName
Gaudi::Property<std::string> DerivationFramework::TrackStateOnSurfaceDecorator::m_sgName { this, "DecorationPrefix", "IDDET1_",""} |
|
private |
◆ m_storeHoles
bool DerivationFramework::TrackStateOnSurfaceDecorator::m_storeHoles |
|
private |
◆ m_storeOutliers
bool DerivationFramework::TrackStateOnSurfaceDecorator::m_storeOutliers |
|
private |
◆ m_storePixel
bool DerivationFramework::TrackStateOnSurfaceDecorator::m_storePixel |
|
private |
◆ m_storeSCT
bool DerivationFramework::TrackStateOnSurfaceDecorator::m_storeSCT |
|
private |
◆ m_storeTRT
bool DerivationFramework::TrackStateOnSurfaceDecorator::m_storeTRT |
|
private |
◆ m_trackPixFloatDecorKeys
◆ m_trackTRTFloatDecorKeys
◆ m_trackTSOSMOSLinkDecorKey
◆ m_trtcaldbTool
ToolHandle<ITRT_CalDbTool> DerivationFramework::TrackStateOnSurfaceDecorator::m_trtcaldbTool |
|
private |
◆ m_trtDCName
◆ m_TRTdEdxTool
ToolHandle<ITRT_ToT_dEdx> DerivationFramework::TrackStateOnSurfaceDecorator::m_TRTdEdxTool |
|
private |
◆ m_trtId
const TRT_ID* DerivationFramework::TrackStateOnSurfaceDecorator::m_trtId |
|
private |
◆ m_trtMapName
SG::ReadHandleKey<std::vector<unsigned int> > DerivationFramework::TrackStateOnSurfaceDecorator::m_trtMapName { this, "TrtMapName", "TRT_DriftCirclesOffsets" , ""} |
|
private |
◆ m_trtMsosName
◆ m_trtPhaseDecorKey
◆ m_trtPhaseKey
SG::ReadHandleKey<ComTime> DerivationFramework::TrackStateOnSurfaceDecorator::m_trtPhaseKey { this,"TRTPhaseKey","TRT_Phase", ""} |
|
private |
◆ m_updator
ToolHandle<Trk::IUpdator> DerivationFramework::TrackStateOnSurfaceDecorator::m_updator |
|
private |
◆ m_varHandleArraysDeclared
◆ m_vhka
The documentation for this class was generated from the following files:
def retrieve(aClass, aKey=None)
bool is_pixel(Identifier id) const
ToolHandle< Trk::IResidualPullCalculator > m_residualPullCalculator
SG::ReadHandleKey< std::vector< unsigned int > > m_pixelMapName
void setUnbiasedResidual(float unbiasedResidualX, float unbiasedResidualY)
Sets the unbiased residual.
const TrkDetElementBase * associatedDetectorElement() const
return associated Detector Element
void createDecoratorKeys(T_Parent &parent, const SG::ReadHandleKey< T_Cont > &container_key, const std::string &prefix, const std::vector< std::string > &decor_names, std::vector< SG::WriteDecorHandleKey< T_Cont > > &decor_out)
@ kTRTdEdx_noHT_divByLDecor
const_pointer_type cptr()
Dereference the pointer.
void setDetType(char detType)
Sets the detector type.
bool is_sct(Identifier id) const
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
const Trk::TrackStates * trackStateOnSurfaces() const
return a pointer to a const DataVector of const TrackStateOnSurfaces.
SG::ReadHandleKey< ComTime > m_trtPhaseKey
const TrackInfo & info() const
Returns a const ref to info of a const tracks.
SG::ReadHandleKey< std::vector< unsigned int > > m_trtMapName
TrackStateValidation_v1 TrackStateValidation
Reference the current persistent version:
@ Unbiased
RP with track state that has measurement not included.
virtual const Trk::Surface & associatedSurface() const override final
returns the surface for the local to global transformation
StoreGateSvc_t m_evtStore
Pointer to StoreGate (event store by default)
std::vector< SG::VarHandleKeyArray * > m_vhka
Class describing a TrackStateValidation.
Identifiable container index to a contained object.
MaterialUpdateMode
This is a steering enum to force the material update it can be: (1) addNoise (-1) removeNoise Second ...
ToolHandle< ITRT_CalDbTool > m_trtcaldbTool
void setUnbiasedPull(float unbiasedPullX, float unbiasedPullY)
Sets the unbiased pull.
ToolHandle< Trk::IExtrapolator > m_extrapolator
bool is_trt(Identifier id) const
SG::ReadHandleKey< xAOD::TrackMeasurementValidationContainer > m_sctClustersName
ElementLink< xAOD::TrackMeasurementValidationContainer > buildElementLink(const Trk::PrepRawData *, const std::vector< unsigned int > *, const xAOD::TrackMeasurementValidationContainer *) const
#define ATH_MSG_VERBOSE(x)
const std::string & key() const
Return the StoreGate ID for the referenced object.
const Amg::Vector3D & center() const
Returns the center position of the Surface.
bool is_valid() const
Check if id is in a valid state.
SG::ReadHandleKey< std::vector< unsigned int > > m_sctMapName
const ServiceHandle< StoreGateSvc > & detStore() const
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
virtual void setOwner(IDataHandleHolder *o)=0
@ Outlier
This TSoS contains an outlier, that is, it contains a MeasurementBase/RIO_OnTrack which was not used ...
const AtlasDetectorID * m_idHelper
SG::WriteHandleKey< xAOD::TrackStateValidationContainer > m_sctMsosName
virtual const S & associatedSurface() const override final
Access to the Surface method.
virtual const RIO_OnTrack & rioOnTrack(unsigned int) const =0
returns the RIO_OnTrack (also known as ROT) objects depending on the integer.
Class providing comparison function, or relational definition, for sorting MeasurementBase objects.
SG::ReadHandleKey< Trk::PRDtoTrackMap > m_prdToTrackMap
@ kTRTusedHits_noHT_divByLDecor
@ Hole
A hole on the track - this is defined in the following way.
virtual float drifttime(float radius) const =0
drifttime for given radius
Handle class for adding a decoration to an object.
Base class for all CompetingRIOsOnTack implementations, extends the common MeasurementBase.
virtual const Surface & surface() const =0
Return surface associated with this detector element.
Gaudi::Property< std::vector< float > > m_pixelLayerRadii
ToolHandle< ITRT_ToT_dEdx > m_TRTdEdxTool
StoreGateSvc_t m_detStore
Pointer to StoreGate (detector store by default)
StatusCode initialize(bool used=true)
If this object is used as a property, then this should be called during the initialize phase.
std::vector< SG::WriteDecorHandleKey< xAOD::TrackParticleContainer > > m_trackTRTFloatDecorKeys
ToolHandle< Trk::IUpdator > m_updator
virtual bool isValid() override final
Can the handle be successfully dereferenced?
SG::ReadCondHandleKey< InDetDD::SiDetectorElementCollection > m_SCTDetEleCollKey
const Amg::MatrixX & localCovariance() const
Interface method to get the localError.
virtual void renounce()=0
std::conditional< std::is_base_of< SG::VarHandleKeyArray, T >::value, VarHandleKeyArrayType, type2 >::type type
ElementLink implementation for ROOT usage.
SG::WriteDecorHandleKey< xAOD::TrackParticleContainer > m_trackTSOSMOSLinkDecorKey
unsigned short objIndex() const
object index in collection
const Perigee * perigeeParameters() const
return Perigee.
void setBiasedPull(float biasedPullX, float biasedPullY)
Sets the biased pull.
void setBiasedResidual(float biasedResidualX, float biasedResidualY)
Sets the biased residual.
ToolHandle< Trk::ITrackHoleSearchTool > m_holeSearchTool
value_type push_back(value_type pElem)
Add an element to the end of the collection.
StatusCode initialize(bool used=true)
bool isValid() const
check that both fields are set
Eigen::Matrix< double, 3, 1 > Vector3D
virtual const Trk::PrepRawData * prepRawData() const =0
returns the PrepRawData (also known as RIO) object to which this RIO_OnTrack is associated.
void stable_sort(DataModel_detail::iterator< DVL > beg, DataModel_detail::iterator< DVL > end)
Specialization of stable_sort for DataVector/List.
const LocalParameters & localParameters() const
Interface method to get the LocalParameters.
const IdentContIndex & getHashAndIndex() const
void setLocalAngles(float localTheta, float localPhi)
Sets the local angles.
void setLocalPosition(float localX, float localY)
Sets the local position.
Gaudi::Property< std::string > m_sgName
SG::WriteHandleKey< xAOD::TrackStateValidationContainer > m_trtMsosName
SG::ReadHandleKey< xAOD::EventInfo > m_eventInfoKey
@ Biased
RP with track state including the hit.
StatusCode initialize(bool used=true)
If this object is used as a property, then this should be called during the initialize phase.
value_type get_compact(void) const
Get the compact id.
StatusCode record(std::unique_ptr< T > data)
Record a const object to the store.
#define ATH_MSG_WARNING(x)
void setDetElementId(uint64_t detElementId)
Sets the detector element identifier.
std::vector< SG::WriteDecorHandleKey< xAOD::TrackParticleContainer > > m_trackPixFloatDecorKeys
SG::VarHandleKey & vhKey()
Return a non-const reference to the HandleKey.
SG::WriteHandleKey< xAOD::TrackStateValidationContainer > m_pixelMsosName
SG::ReadHandleKey< xAOD::TrackMeasurementValidationContainer > m_pixelClustersName
void setType(int type)
Sets the type (measurement, outlier, hole)
std::vector< SG::WriteDecorHandleKey< xAOD::EventInfo > > m_trtPhaseDecorKey
void setTrackMeasurementValidationLink(ElementLink< xAOD::TrackMeasurementValidationContainer > trackMeasurementValidationLink)
sets the link to the TrackMeasurementValidationContainer
virtual const Amg::Vector3D & globalPosition() const override final
return the global position of this RIO_OnTrack
unsigned int indexOfMaxAssignProb() const
Index of the ROT with the highest assignment probability.
SG::ReadHandleKey< xAOD::TrackMeasurementValidationContainer > m_trtDCName
Gaudi::Details::PropertyBase & declareGaudiProperty(Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &)
specialization for handling Gaudi::Property<SG::VarHandleKey>
unsigned short collHash() const
Accessor to hash, obj index and combined index.
bool isShared(const PrepRawData &prd) const
does this PRD belong to more than one track?
SG::ReadHandleKey< xAOD::TrackParticleContainer > m_containerName
@ Measurement
This is a measurement, and will at least contain a Trk::MeasurementBase.
ParticleHypothesis particleHypothesis() const
Returns the particle hypothesis used for Track fitting.