CbmRoot
Loading...
Searching...
No Matches
CbmStsParSim.cxx
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#include "CbmStsParSim.h"
11
12#include <Logger.h> // for LOG, Logger
13
14#include <sstream> // for operator<<, basic_ostream, stringstream
15#include <string> // for char_traits
16
18
19 // ----- Constructor ----------------------------------------------------
20 CbmStsParSim::CbmStsParSim(const char* name, const char* title, const char* context)
21 : FairParGenericSet(name, title, context)
22{
23}
24// --------------------------------------------------------------------------
25
26
27// ----- Reset ----------------------------------------------------------
29{
30 status = kFALSE;
31 resetInputVersions();
32}
33// --------------------------------------------------------------------------
34
35
36// ----- Read parameters from ASCII file --------------------------------
37Bool_t CbmStsParSim::getParams(FairParamList*)
38{
39 LOG(fatal) << GetName() << ": ASCII input is not defined!";
40 return kFALSE;
41}
42// --------------------------------------------------------------------------
43
44
45// ----- Write parameters from ASCII file -------------------------------
46void CbmStsParSim::putParams(FairParamList*) { LOG(fatal) << GetName() << ": ASCII output is not defined!"; }
47// --------------------------------------------------------------------------
48
49
50// ----- String output --------------------------------------------------
51std::string CbmStsParSim::ToString() const
52{
53 std::stringstream ss;
54 ss << "Mode: " << (fEventMode ? "event" : "stream");
55 ss << " | Diffusion: " << (fDiffusion ? "ON" : "OFF");
56 ss << " | Lorentz shift: " << (fLorentzShift ? "ON" : "OFF");
57 ss << " | Cross-talk: " << (fCrossTalk ? "ON" : "OFF");
58 ss << " | Energy loss: ";
59 if (fELossModel == CbmStsELoss::kIdeal) ss << "ideal";
61 ss << "uniform";
63 ss << "Urban model";
64 else
65 ss << "unknown";
66 ss << " | Noise: " << (fNoise ? "ON" : "OFF");
67 if (fOnlyPrimaries) ss << " | ONLY PRIMARIES";
68 return ss.str();
69}
70// --------------------------------------------------------------------------
ClassImp(CbmStsParSim) CbmStsParSim
Settings for STS simulation (digitizer)
std::string ToString() const
String output.
Bool_t fEventMode
Event-by-event mode.
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.
Bool_t fLorentzShift
Apply Lorentz shift.
Bool_t fNoise
Generate inter-event noise.
Bool_t fCrossTalk
Apply cross-talk.
CbmStsELoss fELossModel
Energy loss model.
virtual void clear()
Reset all parameters.
CbmStsParSim(const char *name="CbmStsParSim", const char *title="STS parameters", const char *context="Default")
Constructor.