13#include "KVMaterial.h"
152 virtual ~ KVTarget();
179 At(ilayer - 1) : 0) : 0);
267#if ROOT_VERSION_CODE >= ROOT_VERSION(3,4,0)
#define ClassDef(name, id)
Abstract base class container for multi-particle events.
Extended TList class which owns its objects by default.
Description of physical materials used to construct detectors & targets; interface to range tables.
Description of properties and kinematics of atomic nuclei.
Base class for relativistic kinematics of massive particles.
Calculation/correction of energy losses of particles through an experimental target.
void Print(Option_t *opt="") const
Bool_t IsIncoming() const
void SetIncoming(Bool_t r=kTRUE)
KVTarget()
Default costructor.
void SetAngleToBeam(Double_t a)
const TVector3 & GetNormal()
void init()
Default initialisations.
virtual void Copy(TObject &obj) const
Copy this to obj.
virtual void DetectParticle(KVNucleus *, TVector3 *norm=0)
virtual Double_t GetELostByParticle(KVNucleus *, TVector3 *norm=0)
Int_t NumberOfLayers() const
virtual Double_t GetParticleEIncFromERes(KVNucleus *, TVector3 *norm=0)
KVList * fTargets
list of layers
Bool_t IsOutgoing() const
virtual Double_t GetIncidentEnergyFromERes(Int_t Z, Int_t A, Double_t Eres)
void Clear(Option_t *opt="")
TVector3 & GetInteractionPoint(KVParticle *part=0)
void SetRandomized(Bool_t r=kTRUE)
KVMaterial * GetLayerByIndex(Int_t ilayer) const
Int_t fNLayers
number of layers
Double_t GetEffectiveThickness(KVParticle *part=0, Int_t ilayer=1)
KVMaterial * GetLayer(TVector3 &depth)
KVMaterial * GetLayerByDepth(Double_t depth)
void AddLayer(const Char_t *material, Double_t thick)
Double_t GetTotalEffectiveThickness(KVParticle *part=0)
Double_t GetThickness() const
void SetInteractionLayer(Int_t ilayer, TVector3 &dir)
void DetectEvent(KVEvent *)
virtual void SetMaterial(const Char_t *type)
Set material of first layer.
TVector3 fNormal
normal to target - (0,0,1) by default
Bool_t IsRandomized() const
void SetOutgoing(Bool_t r=kTRUE)
Double_t GetTotalThickness()
Double_t GetAtomsPerCM2() const
virtual UInt_t GetUnits() const;
Double_t GetAngleToBeam()
Gives angle of target to incident beam direction in degrees.
void SetLayerThickness(Float_t thick, Int_t ilayer=1)
Set 'thickness' in mg/cm**2 of a layer, by default this is the first layer.
Int_t GetLayerIndex(TVector3 &depth)
TVector3 fIntPoint
last randomly generated interaction point
KVList * GetLayers() const
R__ALWAYS_INLINE Bool_t TestBit(UInt_t f) const