1#ifndef KVRECONSTRUCTEDNUCLEUS_H
2#define KVRECONSTRUCTEDNUCLEUS_H
8#include "KVIDTelescope.h"
9#include "KVIdentificationResult.h"
12#include "KVReconNucTrajectory.h"
99 Obsolete(
"GetDetectorList",
"1.10",
"1.12");
419 for (
int i = 1; i <=
n; i++) {
421 if (!strcmp(
id->GetIDType(), idtype)) {
438 if (!idt)
return nullptr;
#define ClassDef(name, id)
#define R__FOR_EACH(type, proc)
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize id
virtual const Char_t * GetType() const
Base class for detector geometry description.
UShort_t GetSegment() const
const KVSeqCollection * GetIDTelescopes() const
void AddUnidentifiedParticle(int modify_identified=-1) const
KVGeoDetectorNode * GetNodeAt(Int_t i) const
void AddIdentifiedParticle(int modify_unidentified=-1) const
KVDetector * GetDetector() const
Group of detectors which can be treated independently of all others in array.
Extended version of ROOT THashList.
Base class for all detectors or associations of detectors in array which can identify charged particl...
Full result of one attempted particle identification.
Int_t GetIntValue(const Char_t *name) const
void SetValue(const Char_t *name, value_type value)
Description of properties and kinematics of atomic nuclei.
Int_t GetZ() const
Return the number of proton / atomic number.
KVNameValueList * GetParameters() const
Path through detector array used to reconstruct detected particle.
Int_t GetNumberOfIndependentIdentifications() const
KVDetector * GetDetector(const TString &label) const
Nuclei reconstructed from data measured by a detector array .
virtual void SetIDCode(UShort_t s)
virtual void Reconstruct(KVDetector *kvd)
KVIdentificationResult * GetIdentificationResult(Int_t i) const
void PrintStatusString() const
virtual Bool_t IsZMeasured() const
virtual void SetAMeasured(Bool_t yes=kTRUE)
KVIdentificationResult * GetIdentificationResult(KVIDTelescope *idt)
Float_t fRealZ
Z returned by identification routine.
void SetReconstructionTrajectory(const KVReconNucTrajectory *t)
Method called in initial reconstruction of particle.
virtual Double_t GetTargetEnergyLoss() const
void CopyAndMoveReferences(const KVReconstructedNucleus *)
KVIdentificationResult * GetIdentificationResult(const Char_t *idtype) const
KVIdentificationResult * GetIdentificationResult(Int_t i)
void SetNSegDet(Int_t seg)
Bool_t InArray(const TString &) const
Returns kTRUE if particle was detected in array with given name.
const KVReconNucTrajectory * fReconTraj
trajectory used to reconstruct particle
void ls(Option_t *="") const
virtual Int_t GetECode() const
Int_t GetNumberOfIdentificationResults() const
virtual void Print(Option_t *option="") const
virtual void Copy(TObject &) const
KVDetector * GetStoppingDetector() const
void SetDetector(int i, KVDetector *);
Bool_t IsCalibrated() const
KVIdentificationResult * GetIdentificationResult(KVIDTelescope *idt) const
virtual void SubtractEnergyFromAllDetectors()
KVHashList fDetList
non-persistent list of pointers to detectors
Float_t fRealA
A returned by identification routine.
void SetIdentification(KVIdentificationResult *, KVIDTelescope *)
virtual ~KVReconstructedNucleus()
static UInt_t GetNUnidentifiedInGroup(KVGroup *grp)
KVReconstructedNucleus()
default ctor.
KVDetector * GetDetector(int i) const
Bool_t IsIdentified() const
void RebuildReconTraj(bool in_streamer=true)
virtual Int_t GetIDCode() const
KVGroup * GetGroup() const
TClonesArray fIDResults
results of every identification attempt made for this nucleus, in order of the ID telescopes used
virtual void SetTargetEnergyLoss(Double_t e)
KVString fDetNames
list of names of detectors through which particle passed
void ModifyReconstructionTrajectory(const KVReconNucTrajectory *t)
virtual void GetAnglesFromReconstructionTrajectory(Option_t *opt="random")
static UInt_t GetNIdentifiedInGroup(KVGroup *grp)
KVDetector * GetDetector(const TString &label) const
const KVSeqCollection * GetIDTelescopes() const
void init()
default initialisation
const Char_t * GetIDtelNames() const
KVString fIDTelName
name of identification telescope which identified this particle (if any)
TString GetArrayName() const
Returns name of array particle was detected in (if known)
void SetRealZ(Float_t zz)
const Char_t * GetDetectorNames() const
virtual void SetZMeasured(Bool_t yes=kTRUE)
Int_t fNSegDet
number of segmented/independent detectors hit by particle
void ReplaceReconTraj(const TString &traj_name)
virtual Float_t GetPID() const
void AddDetector(KVDetector *)
Double_t fTargetEnergyLoss
calculated energy lost in target
KVIDTelescope * GetIdentifyingTelescope() const
virtual void Clear(Option_t *option="")
static void AnalyseParticlesInGroup(KVGroup *grp)
const KVSeqCollection * GetDetectorList() const
@ kStatusOKafterShare
of energy losses of other particles in the same group which have Status=0
@ kStatusStopFirstStage
(arbitrarily) between this and the other particle(s) with Status=2
@ kStatusPileupDE
telescope; a minimum Z could be estimated from the measured energy loss.
KVIdentificationResult * GetIdentificationResult(const Char_t *idtype)
void SetIdentifyingTelescope(KVIDTelescope *i)
KVIDTelescope * fIDTelescope
non-persistent pointer to identification telescope
const KVReconNucTrajectory * GetReconstructionTrajectory() const
virtual Bool_t IsAMeasured() const
Int_t fAnalStatus
status of particle after analysis of reconstructed event
virtual void SetECode(UChar_t s)
KaliVeda extensions to ROOT collection classes.
virtual TObject * FindObjectByLabel(const Char_t *) const
virtual TObject * At(Int_t idx) const
Extension of ROOT TString class which allows backwards compatibility with ROOT v3....
TObject * ConstructedAt(Int_t idx)
virtual Int_t GetEntries() const
virtual Bool_t IsEmpty() const
const char * GetName() const override
Int_t GetEntries() const override
R__ALWAYS_INLINE Bool_t TestBit(UInt_t f) const
void Obsolete(const char *method, const char *asOfVers, const char *removedFromVers) const
const char * Data() const