|
ATLAS Offline Software
|
This validation tool writes basic information about Trk::TrackParticleBase into an ntuple;.
More...
#include <BasicValTrkParticleNtupleTool.h>
|
| BasicValTrkParticleNtupleTool (const std::string &, const std::string &, const IInterface *) |
|
| ~BasicValTrkParticleNtupleTool () |
|
StatusCode | initialize () |
|
StatusCode | finalize () |
| finalize More...
|
|
virtual StatusCode | addNtupleItems (TTree *tree) |
| add branches to the tree Should be called once (per track collection and tree) dunring the initialisation phase by the calling algorithm (usually Trk::TrackValidationNtupleWriter) More...
|
|
virtual StatusCode | writeTrackData (const Trk::Track &, const int iterationIndex, const unsigned int fitStatCode) |
| fill AND write ntuple data of a given track More...
|
|
virtual StatusCode | writeTrackParticleData (const Trk::TrackParticleBase &) |
| fill AND write ntuple data of a given track particle More...
|
|
virtual StatusCode | fillTrackData (const Trk::Track &, const int iterationIndex, const unsigned int fitStatCode) |
| fill ntuple data of a given track without writing the record. More...
|
|
virtual StatusCode | fillTrackParticleData (const Trk::TrackParticleBase &) |
| fill ntuple data of a given track particle without writing the record. More...
|
|
virtual StatusCode | fillTrackParameter (const Trk::TrackParameters *, const int iterationIndex) |
| fill ntuple data of a given track without writing the record. More...
|
|
virtual StatusCode | fillMeasurementData (const Trk::MeasurementBase *, const Trk::TrackParameters *) |
| fill ntuple data of given measurement and track parameters without writing the record More...
|
|
virtual StatusCode | fillOutlierData (const Trk::MeasurementBase *, const Trk::TrackParameters *, const Trk::FitQualityOnSurface *) |
| fill ntuple data of an outlier measurement (without writing the record yet). More...
|
|
virtual StatusCode | fillHoleData (const Trk::TrackStateOnSurface &) |
| fill ntuple data of holes on track without writing the record More...
|
|
virtual StatusCode | fillTrackTruthData (const TrackParameters *&, const TrackTruth &, const int truthIndex=-1) |
| fill ntuple data of holes on track without writing the record More...
|
|
virtual StatusCode | writeRecord (TTree *tree) |
| write the filled data into the ntuple 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 |
|
This validation tool writes basic information about Trk::TrackParticleBase into an ntuple;.
It can book the ntuple, create the tree directory and add basic entries. This tool is also able to write the current record to the ntuple file and start a new entry. You can also use an existing ntuple tree (which has to have the same track-wise structure) and just use the Trk::BasicValidationNtupleTool to add some ntuple variables.
Every entry (Rec:TrackPartcile) contains the event number, a track id (numbering the tracks within one event).
Perigee parameters and track summary are filled for every track if available.
- Author
- Pavel.nosp@m..Ruz.nosp@m.icka@.nosp@m.cern.nosp@m..ch
Definition at line 39 of file BasicValTrkParticleNtupleTool.h.
◆ StoreGateSvc_t
◆ BasicValTrkParticleNtupleTool()
Trk::BasicValTrkParticleNtupleTool::BasicValTrkParticleNtupleTool |
( |
const std::string & |
t, |
|
|
const std::string & |
n, |
|
|
const IInterface * |
p |
|
) |
| |
◆ ~BasicValTrkParticleNtupleTool()
Trk::BasicValTrkParticleNtupleTool::~BasicValTrkParticleNtupleTool |
( |
| ) |
|
|
default |
◆ addNtupleItems()
StatusCode Trk::BasicValTrkParticleNtupleTool::addNtupleItems |
( |
TTree * |
tree | ) |
|
|
virtual |
◆ 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);
253 return PBASE::declareProperty(
name,hndl,
doc);
◆ 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.
229 return PBASE::declareProperty(
name,hndl,
doc);
◆ 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.
338 return PBASE::declareProperty(
name, property,
doc);
◆ 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
◆ fillFitQualityData()
StatusCode Trk::BasicValTrkParticleNtupleTool::fillFitQualityData |
( |
const Trk::FitQuality * |
fitQuality | ) |
|
|
private |
◆ fillHoleData()
◆ fillMeasurementData()
◆ fillOutlierData()
fill ntuple data of an outlier measurement (without writing the record yet).
The TrackParameters and FQoS are optional, i.e. NULL pointers should be handled by the implementation
Implements Trk::IValidationNtupleTool.
Definition at line 376 of file BasicValTrkParticleNtupleTool.cxx.
379 {
return StatusCode::SUCCESS;}
◆ fillTrackData()
StatusCode Trk::BasicValTrkParticleNtupleTool::fillTrackData |
( |
const Trk::Track & |
, |
|
|
const int |
iterationIndex, |
|
|
const unsigned int |
fitStatCode |
|
) |
| |
|
virtual |
◆ fillTrackParameter()
◆ fillTrackParticleData()
fill ntuple data of a given track particle without writing the record.
fill track data into variables without actually writing the record
- if this method is called twice without writing the ntuple inbetween the first data will be lost!
Implements Trk::IValidationNtupleTool.
Definition at line 190 of file BasicValTrkParticleNtupleTool.cxx.
196 if (!
evt.isValid()) {
200 return StatusCode::FAILURE;
226 return StatusCode::SUCCESS;
◆ fillTrackTruthData()
◆ fillTrkParticlePerigee()
StatusCode Trk::BasicValTrkParticleNtupleTool::fillTrkParticlePerigee |
( |
const Trk::Perigee * |
perigee | ) |
|
|
private |
fill the perigee in ntuple
Definition at line 233 of file BasicValTrkParticleNtupleTool.cxx.
244 return StatusCode::FAILURE;
255 if (perigee->covariance()) {
268 return StatusCode::SUCCESS;
◆ fillTrkParticleSummary()
fill the perigee in ntuple
Definition at line 274 of file BasicValTrkParticleNtupleTool.cxx.
283 return StatusCode::FAILURE;
300 std::bitset<Trk::numberOfDetectorTypes> hitPattern;
308 return StatusCode::SUCCESS;
◆ finalize()
StatusCode Trk::BasicValTrkParticleNtupleTool::finalize |
( |
| ) |
|
◆ initialize()
StatusCode Trk::BasicValTrkParticleNtupleTool::initialize |
( |
| ) |
|
◆ 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()
const InterfaceID & Trk::IValidationNtupleTool::interfaceID |
( |
| ) |
|
|
inlinestaticinherited |
Interface ID, declared here, and defined below.
Definition at line 105 of file IValidationNtupleTool.h.
106 return IID_IValidationNtupleTool;
◆ 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()
◆ resetVariables()
void Trk::BasicValTrkParticleNtupleTool::resetVariables |
( |
| ) |
|
|
private |
◆ 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()
◆ writeRecord()
StatusCode Trk::BasicValTrkParticleNtupleTool::writeRecord |
( |
TTree * |
tree | ) |
|
|
virtual |
◆ writeTrackData()
StatusCode Trk::BasicValTrkParticleNtupleTool::writeTrackData |
( |
const Trk::Track & |
, |
|
|
const int |
iterationIndex, |
|
|
const unsigned int |
fitStatCode |
|
) |
| |
|
virtual |
◆ writeTrackParticleData()
◆ m_bookNewNtuple
bool Trk::BasicValTrkParticleNtupleTool::m_bookNewNtuple |
|
private |
◆ m_chi2
float Trk::BasicValTrkParticleNtupleTool::m_chi2 |
|
private |
◆ m_detStore
◆ m_errord0
float Trk::BasicValTrkParticleNtupleTool::m_errord0 |
|
private |
◆ m_errorphi0
float Trk::BasicValTrkParticleNtupleTool::m_errorphi0 |
|
private |
◆ m_errorqoverp
float Trk::BasicValTrkParticleNtupleTool::m_errorqoverp |
|
private |
◆ m_errortheta0
float Trk::BasicValTrkParticleNtupleTool::m_errortheta0 |
|
private |
◆ m_errorz0
float Trk::BasicValTrkParticleNtupleTool::m_errorz0 |
|
private |
◆ m_eventNumber
int Trk::BasicValTrkParticleNtupleTool::m_eventNumber |
|
private |
◆ m_evt
◆ m_evtStore
◆ m_idHitPattern
unsigned long Trk::BasicValTrkParticleNtupleTool::m_idHitPattern |
|
private |
◆ m_lastEventNumber
unsigned int Trk::BasicValTrkParticleNtupleTool::m_lastEventNumber |
|
private |
◆ m_nt
TTree* Trk::BasicValTrkParticleNtupleTool::m_nt |
|
private |
◆ m_ntupleDirName
std::string Trk::BasicValTrkParticleNtupleTool::m_ntupleDirName |
|
private |
◆ m_ntupleFileName
std::string Trk::BasicValTrkParticleNtupleTool::m_ntupleFileName |
|
private |
◆ m_ntupleTreeName
std::string Trk::BasicValTrkParticleNtupleTool::m_ntupleTreeName |
|
private |
◆ m_numberOfContribPixelLayers
unsigned char Trk::BasicValTrkParticleNtupleTool::m_numberOfContribPixelLayers |
|
private |
◆ m_numberOfPixelDeadSensors
unsigned char Trk::BasicValTrkParticleNtupleTool::m_numberOfPixelDeadSensors |
|
private |
◆ m_numberOfPixelHits
unsigned char Trk::BasicValTrkParticleNtupleTool::m_numberOfPixelHits |
|
private |
◆ m_numberOfPixelHoles
unsigned char Trk::BasicValTrkParticleNtupleTool::m_numberOfPixelHoles |
|
private |
◆ m_numberOfSCTDeadSensors
unsigned char Trk::BasicValTrkParticleNtupleTool::m_numberOfSCTDeadSensors |
|
private |
◆ m_numberOfSCTHits
unsigned char Trk::BasicValTrkParticleNtupleTool::m_numberOfSCTHits |
|
private |
◆ m_numberOfSCTHoles
unsigned char Trk::BasicValTrkParticleNtupleTool::m_numberOfSCTHoles |
|
private |
◆ m_numberOfTRTDeadStraws
unsigned char Trk::BasicValTrkParticleNtupleTool::m_numberOfTRTDeadStraws |
|
private |
◆ m_numberOfTRTHighThresholdHits
unsigned char Trk::BasicValTrkParticleNtupleTool::m_numberOfTRTHighThresholdHits |
|
private |
◆ m_numberOfTRTHits
unsigned char Trk::BasicValTrkParticleNtupleTool::m_numberOfTRTHits |
|
private |
◆ m_numberOfTRTHoles
unsigned char Trk::BasicValTrkParticleNtupleTool::m_numberOfTRTHoles |
|
private |
◆ m_Rec_d0
float Trk::BasicValTrkParticleNtupleTool::m_Rec_d0 |
|
private |
◆ m_Rec_eta
float Trk::BasicValTrkParticleNtupleTool::m_Rec_eta |
|
private |
◆ m_Rec_phi0
float Trk::BasicValTrkParticleNtupleTool::m_Rec_phi0 |
|
private |
◆ m_Rec_qOverP
float Trk::BasicValTrkParticleNtupleTool::m_Rec_qOverP |
|
private |
◆ m_Rec_z0
float Trk::BasicValTrkParticleNtupleTool::m_Rec_z0 |
|
private |
◆ m_runNumber
int Trk::BasicValTrkParticleNtupleTool::m_runNumber |
|
private |
◆ m_TrackID
unsigned char Trk::BasicValTrkParticleNtupleTool::m_TrackID |
|
private |
◆ m_TrackIDcounter
int Trk::BasicValTrkParticleNtupleTool::m_TrackIDcounter |
|
private |
◆ m_varHandleArraysDeclared
◆ m_vhka
◆ s_errorEntry
const float Trk::BasicValTrkParticleNtupleTool::s_errorEntry = -99999.0 |
|
staticprivate |
The documentation for this class was generated from the following files:
@ numberOfPixelHits
number of pixel layers on track with absence of hits
@ numberOfContribPixelLayers
number of contributing layers of the pixel detector
float m_chi2
chi sqared of the track fit normalized to DOF
virtual StatusCode writeRecord(TTree *tree)
write the filled data into the ntuple
unsigned char m_TrackID
number of the track within the current event
float m_errortheta0
error on angle theta at perigee UNIT:rad
unsigned char m_numberOfSCTHoles
number of SCT holes
@ numberOfTRTHighThresholdHits
total number of TRT hits which pass the high threshold
static const float s_errorEntry
error entry costant
unsigned char m_numberOfPixelDeadSensors
number of dead pixel sensors crossed
float m_Rec_qOverP
reconstructed track params: curvature q/p UNIT:1/MeV
int m_eventNumber
event number the track belongs to
float m_errorphi0
error on angle phi at perigee UNIT:rad
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
@ numberOfSCTDeadSensors
number of TRT hits
Dummy class used to allow special convertors to be called for surfaces owned by a detector element.
unsigned char m_numberOfPixelHoles
number of pixel layers on track with absence of hits
StoreGateSvc_t m_evtStore
Pointer to StoreGate (event store by default)
std::vector< SG::VarHandleKeyArray * > m_vhka
StatusCode fillTrkParticleSummary(const Trk::TrackSummary *summary)
fill the perigee in ntuple
unsigned char m_numberOfSCTHits
number of measurements in the SCT
#define ATH_MSG_VERBOSE(x)
unsigned char m_numberOfTRTHits
number of TRT hits
int m_runNumber
run number the track belongs to
@ numberOfSCTHoles
number of Holes in both sides of a SCT module
@ numberOfTRTHoles
number of TRT hits which pass the high threshold (only xenon counted) total number of TRT hits which ...
float m_errord0
error on local d0 at perigee UNIT:mm
virtual void setOwner(IDataHandleHolder *o)=0
@ numberOfTRTDeadStraws
number of TRT tube hits
unsigned char m_numberOfSCTDeadSensors
number of dead SCT sensors crossed
unsigned char m_numberOfTRTDeadStraws
number of dead TRT straws crossed
int m_TrackIDcounter
help variable to link with event property tree
::StatusCode StatusCode
StatusCode definition for legacy code.
@ numberOfSCTHits
number of SCT holes
float m_Rec_d0
reconstructed track params: local d0 at perigee UNIT:mm
std::string m_ntupleDirName
jobOption: Ntuple directory name
@ numberOfPixelDeadSensors
number of pixel hits with broad errors (width/sqrt(12))
SG::ReadHandleKey< xAOD::EventInfo > m_evt
std::string m_ntupleFileName
jobOption: Ntuple file name
Class to represent and store fit qualities from track reconstruction in terms of and number of degre...
StoreGateSvc_t m_detStore
Pointer to StoreGate (detector store by default)
unsigned char m_numberOfPixelHits
number of measurements in the Pixels
StatusCode initialize(bool used=true)
If this object is used as a property, then this should be called during the initialize phase.
float m_Rec_eta
reconstructed track params: pseudorapidity UNIT:1
int numberDoF() const
returns the number of degrees of freedom of the overall track or vertex fit as integer
float m_Rec_phi0
reconstructed track params: angle phi at perigee UNIT:rad
unsigned int m_lastEventNumber
help variable to link with event property tree
@ numberOfPixelHoles
number of pixels which have a ganged ambiguity.
virtual void renounce()=0
std::conditional< std::is_base_of< SG::VarHandleKeyArray, T >::value, VarHandleKeyArrayType, type2 >::type type
@ numberOfTRTHits
number of TRT outliers
unsigned long m_idHitPattern
bit word carrying information about hit layers
unsigned char m_numberOfContribPixelLayers
number of contributing layers of the pixel detector
float m_errorqoverp
error on curvature q/p UNIT:1/MeV
unsigned char m_numberOfTRTHighThresholdHits
number of TRT hits which pass the high threshold
A summary of the information contained by a track.
double error(const Amg::MatrixX &mat, int index)
return diagonal error of the matrix caller should ensure the matrix is symmetric and the index is in ...
FitQualityOnSurface fitQuality(const MultiComponentState &, const MeasurementBase &)
Method for determining the chi2 of the multi-component state and the number of degrees of freedom.
DetectorType
enumerates the various detector types currently accessible from the isHit() method.
std::string m_ntupleTreeName
jobOption: Ntuple tree name
#define ATH_MSG_WARNING(x)
virtual StatusCode addNtupleItems(TTree *tree)
add branches to the tree Should be called once (per track collection and tree) dunring the initialisa...
unsigned char m_numberOfTRTHoles
number of TRT holes
float m_errorz0
error on local z0 at perigee UNIT:mm
StatusCode fillFitQualityData(const Trk::FitQuality *fitQuality)
float m_Rec_z0
reconstructed track params: local z0 at perigee UNIT:mm
SG::VarHandleKey & vhKey()
Return a non-const reference to the HandleKey.
bool m_bookNewNtuple
jobOption: book new ntuple?
StatusCode fillTrkParticlePerigee(const Trk::Perigee *perigee)
fill the perigee in ntuple
TTree * m_nt
Pointer to the NTuple tree.
Gaudi::Details::PropertyBase & declareGaudiProperty(Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &)
specialization for handling Gaudi::Property<SG::VarHandleKey>
double chiSquared() const
returns the of the overall track fit
virtual StatusCode fillTrackParticleData(const Trk::TrackParticleBase &)
fill ntuple data of a given track particle without writing the record.