CbmRoot
Loading...
Searching...
No Matches
CbmStsParSim.h
Go to the documentation of this file.
1/* Copyright (C) 2020 GSI Helmholtzzentrum fuer Schwerionenforschung, Darmstadt
2 SPDX-License-Identifier: GPL-3.0-only
3 Authors: Volker Friese [committer] */
4
10#ifndef CBMSTSPARSIM_H
11#define CBMSTSPARSIM_H 1
12
13#include "CbmStsDefs.h" // for CbmStsELoss, CbmStsELoss::kUrban
14
15#include <FairParGenericSet.h> // for FairParGenericSet
16
17#include <Rtypes.h> // for THashConsistencyHolder, ClassDef
18#include <RtypesCore.h> // for Bool_t, kTRUE, kFALSE
19
20#include <string> // for string
21
22class FairParamList;
23
29class CbmStsParSim : public FairParGenericSet {
30
31public:
33 CbmStsParSim(const char* name = "CbmStsParSim", const char* title = "STS parameters",
34 const char* context = "Default");
35
36
38 virtual ~CbmStsParSim() {}
39
40
42 virtual void clear();
43
44
48 Bool_t CrossTalk() const { return fCrossTalk; }
49
50
54 Bool_t Diffusion() const { return fDiffusion; }
55
56
61
62
66 Bool_t EventMode() const { return fEventMode; }
67
68
73 virtual Bool_t getParams(FairParamList* parList);
74
75
79 Bool_t LorentzShift() const { return fLorentzShift; }
80
81
85 Bool_t Noise() const { return fNoise; }
86
87
91 Bool_t OnlyPrimaries() const { return fOnlyPrimaries; }
92
93
98 virtual void putParams(FairParamList* parList);
99
100
109 void SetEventMode(Bool_t choice = kTRUE) { fEventMode = choice; }
110
111
118 void SetGenerateNoise(Bool_t choice = kTRUE) { fNoise = choice; }
119
120
128 void SetOnlyPrimaries(Bool_t choice = kTRUE) { fOnlyPrimaries = choice; }
129
130
139 void SetProcesses(CbmStsELoss eLossModel, Bool_t useLorentzShift, Bool_t useDiffusion, Bool_t useCrossTalk)
140 {
141 fELossModel = eLossModel;
142 fLorentzShift = useLorentzShift;
143 fDiffusion = useDiffusion;
144 fCrossTalk = useCrossTalk;
145 }
146
147
149 std::string ToString() const;
150
151
152private:
153 Bool_t fEventMode = kFALSE;
155 Bool_t fLorentzShift = kTRUE;
156 Bool_t fDiffusion = kTRUE;
157 Bool_t fCrossTalk = kTRUE;
158 Bool_t fNoise = kTRUE;
159 Bool_t fOnlyPrimaries = kFALSE;
160
162};
163
164#endif /* CBMSTSPARSIM_H */
CbmStsELoss
Energy loss model used in simulation.
Definition CbmStsDefs.h:49
Settings for STS simulation (digitizer)
ClassDef(CbmStsParSim, 1)
Bool_t LorentzShift() const
Check whether Lorentz shift is applied.
CbmStsELoss ELossModel() const
Energy loss model.
std::string ToString() const
String output.
virtual ~CbmStsParSim()
Destructor.
Bool_t Noise() const
Check whether inter-event noise is generated.
Bool_t CrossTalk() const
Check whether cross-talk is applied.
void SetGenerateNoise(Bool_t choice=kTRUE)
Activate or de-activate inter-event noise.
void SetProcesses(CbmStsELoss eLossModel, Bool_t useLorentzShift, Bool_t useDiffusion, Bool_t useCrossTalk)
Bool_t fEventMode
Event-by-event mode.
Bool_t EventMode() const
Check whether event-by-event mode is applied.
virtual void putParams(FairParamList *parList)
Writing parameters to ASCII. Abstract in base class.
Bool_t fOnlyPrimaries
Process sonly primary tracks.
virtual Bool_t getParams(FairParamList *parList)
Reading parameters from ASCII. Abstract in base class.
Bool_t fDiffusion
Apply diffusion.
void SetEventMode(Bool_t choice=kTRUE)
Set event-by-event simulation mode.
Bool_t fLorentzShift
Apply Lorentz shift.
Bool_t fNoise
Generate inter-event noise.
void SetOnlyPrimaries(Bool_t choice=kTRUE)
Process only primary tracks.
Bool_t OnlyPrimaries() const
Process only primary tracks.
Bool_t fCrossTalk
Apply cross-talk.
CbmStsELoss fELossModel
Energy loss model.
virtual void clear()
Reset all parameters.
Bool_t Diffusion() const
Check whether diffusion is applied.
CbmStsParSim(const char *name="CbmStsParSim", const char *title="STS parameters", const char *context="Default")
Constructor.