30#ifndef CBMMUCHDIGITIZEGEM_H
31#define CBMMUCHDIGITIZEGEM_H 1
36#include "TClonesArray.h"
39#include "TStopwatch.h"
83 virtual void Exec(Option_t* opt);
145 Double_t
Sigma_n_e(Double_t Tkin, Double_t mass);
151 Double_t
MPV_n_e(Double_t Tkin, Double_t mass);
268 virtual InitStatus
Init();
286 void AddCharge(
CbmMuchPad* pad, UInt_t charge, Int_t iPoint, Double_t time, Double_t driftTime);
@ kMuch
Muon detection system.
static const Double_t gkResponsePeriod
Base class template for CBM digitisation tasks.
Double_t fPerPadNoiseRate
CbmMuchDigitizeGem(const CbmMuchDigitizeGem &)=delete
Int_t GetNofSignals() const
Int_t fNofDigis
Number of created digis in Exec.
void SetSpotRadius(Double_t spotRadius=0.05)
Double_t MPV_n_e(Double_t Tkin, Double_t mass)
Int_t fNofEvents
Total number of events processed.
void SetMcChain(TChain *mcChain)
Int_t fNofSignals
Number of signals.
CbmMuchDigitizeGem & operator=(const CbmMuchDigitizeGem &)=delete
void DetectorParameters(CbmMuchModule *module)
CbmMuchGeoScheme * fGeoScheme
void SetAlgorithm(Int_t algorithm)
Double_t fTimeDigiLast
Time of last digi sent to DAQ.
void SetLight(Bool_t islight)
Double_t fPreviousEventTime
Int_t GenerateNoisePerModule(CbmMuchModuleGem *, Double_t, Double_t)
Double_t fTimeTot
Total execution time.
void SetDriftVelocity(Double_t velocity)
void SetMeanGasGain(Double_t gasGain)
void AddNoiseSignal(CbmMuchPad *, Double_t, Double_t)
Bool_t ExecPoint(const CbmMuchPoint *point, Int_t)
void SetTimeOverThreshold(Bool_t tot)
Double_t fTimeDigiFirst
Time of first digi sent to DAQ.
virtual void Exec(Option_t *opt)
void SetDTime(Double_t dTime)
void SetTimeBinWidth(Double_t timeBinWidth)
Bool_t BufferSignals(Int_t, Double_t, Double_t)
void SetQThreshold(UInt_t qThreshold)
Bool_t AddCharge(CbmMuchSectorRadial *s, UInt_t ne, Int_t iPoint, Double_t time, Double_t driftTime, Double_t phi1, Double_t phi2)
Double_t GetNPrimaryElectronsPerCm(const CbmMuchPoint *point, int detectortype)
void SetDeadPadsFrac(Double_t deadPadsFrac)
Int_t fNofNoiseTot
Set this boolean variable to True if want to generated Elecronics Noise.
void SetPerPadNoiseRate(Double_t noiserate)
Int_t fNofPoints
Number of points processed in Exec.
virtual ~CbmMuchDigitizeGem()
Double_t Sigma_n_e(Double_t Tkin, Double_t mass)
Bool_t fGenerateElectronicsNoise
Previous Event Time.
void SetNADCChannels(UInt_t nADCChannels)
void ReadAndRegister(Long_t)
std::map< UInt_t, UInt_t > fAddressCharge
Function to sample the noise charge.
Double_t fNofSignalsTot
Total Number of signals.
ECbmModuleId GetSystemId() const
Detector system ID.
Double_t fNofDigisTot
Total number of digis created.
void SetGenerateNoise(Bool_t Noise)
Double_t fNofPointsTot
Total number of points processed.
Int_t GenerateNoise(Double_t, Double_t)
virtual InitStatus Init()
CbmMuchDigi * ConvertSignalToDigi(CbmMuchSignal *)
void SetQMaximum(UInt_t qMax)
void SetMeanNoise(UInt_t meanNoise)
Data class for an analog signal in the MUCH Simple data class used in the digitisation process of the...