ATLAS Offline Software
|
Minimal implementation of VTrackInformation. Instances of this class are attached as UserInformation to G4Tracks. This is used for G4Tracks with no link to the HepMC::GenEvent, but a non-zero barcode/id value. (See AthenaStackingAction::ClassifyNewTrack(...).) No GenParticlePtr is held by the TrackBarcodeInfo class. The member variables are: m_theBaseISFParticle - a pointer to the ISFParticle corresponding to the current G4Track, m_returnedToISF - a flag indicating whether the ISFParticle corresponding to the current G4Track scheduled to be returned to the ISF, m_barcode, m_uniqueID and m_status - ??? More...
#include <TrackBarcodeInfo.h>
Public Types | |
enum | TrackClassification { Primary, RegeneratedPrimary, RegisteredSecondary, Secondary, BarcodeOnly } |
Public Member Functions | |
TrackBarcodeInfo (int uid, int bc, ISF::ISFParticle *baseIsp=0) | |
virtual const ISF::ISFParticle * | GetBaseISFParticle () const override |
return a pointer to the ISFParticle corresponding to the current G4Track. More... | |
virtual ISF::ISFParticle * | GetBaseISFParticle () override |
virtual void | SetBaseISFParticle (ISF::ISFParticle *) override |
set the pointer to the ISFParticle corresponding to the current G4Track. More... | |
virtual bool | GetReturnedToISF () const override |
Is the ISFParticle corresponding to the current G4Track scheduled to be returned to the ISF? More... | |
virtual void | SetReturnedToISF (bool returned) override |
Flag whether the ISFParticle corresponding to the current G4Track scheduled to be returned to the ISF. More... | |
virtual int | GetParticleBarcode () const override |
virtual int | GetParticleUniqueID () const override |
virtual int | GetParticleStatus () const override |
TrackClassification | GetClassification () const |
return the classification of the current G4Ttrack (Primary, Regenerated Primary, Registered Secondary, Secondary) More... | |
void | SetClassification (TrackClassification tc) |
update the classification of the currently tracked particle, usually called when a new G4Track is created or after it survives an interaction. More... | |
HepMC::ConstGenParticlePtr | GetPrimaryGenParticle () const |
return a pointer to the GenParticle used to create the initial G4PrimaryParticle from which the current G4Track decends. More... | |
HepMC::GenParticlePtr | GetPrimaryGenParticle () |
void | SetPrimaryGenParticle (HepMC::GenParticlePtr) |
set the pointer to the GenParticle used to create the initial G4PrimaryParticle from which the current G4Track decends. More... | |
virtual HepMC::ConstGenParticlePtr | GetCurrentGenParticle () const |
return a pointer to the GenParticle corresponding to the current G4Track (if there is one). More... | |
virtual HepMC::GenParticlePtr | GetCurrentGenParticle () |
virtual void | SetCurrentGenParticle (HepMC::GenParticlePtr) |
set the pointer to the GenParticle corresponding to the current G4Track. More... | |
virtual void | Print () const |
Private Attributes | |
ISF::ISFParticle * | m_theBaseISFParticle {} |
int | m_barcode |
int | m_uniqueID |
int | m_status {0} |
bool | m_returnedToISF |
TrackClassification | m_classify |
HepMC::GenParticlePtr | m_primaryGenParticle {} |
Minimal implementation of VTrackInformation. Instances of this class are attached as UserInformation to G4Tracks. This is used for G4Tracks with no link to the HepMC::GenEvent, but a non-zero barcode/id value. (See AthenaStackingAction::ClassifyNewTrack(...).) No GenParticlePtr is held by the TrackBarcodeInfo class. The member variables are: m_theBaseISFParticle - a pointer to the ISFParticle corresponding to the current G4Track, m_returnedToISF - a flag indicating whether the ISFParticle corresponding to the current G4Track scheduled to be returned to the ISF, m_barcode, m_uniqueID and m_status - ???
Definition at line 28 of file TrackBarcodeInfo.h.
|
inherited |
Enumerator | |
---|---|
Primary | |
RegeneratedPrimary | |
RegisteredSecondary | |
Secondary | |
BarcodeOnly |
Definition at line 32 of file VTrackInformation.h.
TrackBarcodeInfo::TrackBarcodeInfo | ( | int | uid, |
int | bc, | ||
ISF::ISFParticle * | baseIsp = 0 |
||
) |
Definition at line 7 of file TrackBarcodeInfo.cxx.
|
inlineoverridevirtual |
return a pointer to the ISFParticle corresponding to the current G4Track.
Reimplemented from VTrackInformation.
Definition at line 36 of file TrackBarcodeInfo.h.
|
inlineoverridevirtual |
|
inlineinherited |
return the classification of the current G4Ttrack (Primary, Regenerated Primary, Registered Secondary, Secondary)
Definition at line 39 of file VTrackInformation.h.
|
inlinevirtualinherited |
Reimplemented in TrackInformation.
Definition at line 68 of file VTrackInformation.h.
|
inlinevirtualinherited |
return a pointer to the GenParticle corresponding to the current G4Track (if there is one).
Reimplemented in TrackInformation.
Definition at line 67 of file VTrackInformation.h.
|
inlineoverridevirtual |
|
inlineoverridevirtual |
|
inlineoverridevirtual |
|
inlineinherited |
Definition at line 55 of file VTrackInformation.h.
|
inlineinherited |
return a pointer to the GenParticle used to create the initial G4PrimaryParticle from which the current G4Track decends.
Should match the return value of ISF::TruthBinding::getPrimaryGenParticle(). TODO Check that this is required.
Definition at line 54 of file VTrackInformation.h.
|
inlineoverridevirtual |
Is the ISFParticle corresponding to the current G4Track scheduled to be returned to the ISF?
Reimplemented from VTrackInformation.
Definition at line 51 of file TrackBarcodeInfo.h.
|
inlinevirtualinherited |
Definition at line 105 of file VTrackInformation.h.
|
overridevirtual |
set the pointer to the ISFParticle corresponding to the current G4Track.
(Only used to replace the ISFParticle by a copy of itself when the G4Track is killed and the copy is scheduled to be returned to the ISF.)
Reimplemented from VTrackInformation.
Definition at line 16 of file TrackBarcodeInfo.cxx.
|
inlineinherited |
update the classification of the currently tracked particle, usually called when a new G4Track is created or after it survives an interaction.
Definition at line 45 of file VTrackInformation.h.
|
virtualinherited |
set the pointer to the GenParticle corresponding to the current G4Track.
This will be updated each time an interaction of the G4Track is recorded to the HepMC::GenEvent.
Reimplemented in TrackInformation.
Definition at line 22 of file VTrackInformation.cxx.
|
inherited |
set the pointer to the GenParticle used to create the initial G4PrimaryParticle from which the current G4Track decends.
TODO Check that this is required - if so, ensure it is set consistently.
Definition at line 12 of file VTrackInformation.cxx.
|
overridevirtual |
Flag whether the ISFParticle corresponding to the current G4Track scheduled to be returned to the ISF.
Only called in TrackProcessorUserActionPassBack::returnParticleToISF
Reimplemented from VTrackInformation.
Definition at line 21 of file TrackBarcodeInfo.cxx.
|
private |
Definition at line 63 of file TrackBarcodeInfo.h.
|
privateinherited |
Definition at line 107 of file VTrackInformation.h.
|
privateinherited |
Definition at line 108 of file VTrackInformation.h.
|
private |
Definition at line 66 of file TrackBarcodeInfo.h.
|
private |
Definition at line 65 of file TrackBarcodeInfo.h.
|
private |
Definition at line 62 of file TrackBarcodeInfo.h.
|
private |
Definition at line 64 of file TrackBarcodeInfo.h.