22#ifdef __USE_DATABASE__
64 void InitializeChannel(TString subsystem, TString name, TString datatosave)
override;
Definition of the pure virtual base class of all data elements.
Beam current monitor template class.
const TString QwBPMStripline< T >::subelement[4]
Configuration file parser with flexible tokenization and search capabilities.
void SetSubsystemName(TString sysname)
Set the name of the inheriting subsystem name.
Abstract base for concrete hardware channels implementing dual-operator pattern.
Template for a combined beam current monitor using weighted inputs.
const VQwHardwareChannel * GetCharge() const override
void SetPedestal(Double_t ped) override
Set the pedestal value for the beam current monitor.
void InitializeChannel(TString name, TString datatosave) override
QwCombinedBCM(TString subsystem, TString name)
void SetCalibrationFactor(Double_t calib) override
Set the calibration factor for the beam current monitor.
QwCombinedBCM(TString subsystemname, TString name, TString type)
Int_t ProcessEvBuffer(UInt_t *buffer, UInt_t word_position_in_buffer, UInt_t subelement=0) override
Process the raw event buffer and decode into the channel.
static std::uniform_real_distribution< double > fDistribution
Internal uniform probability distribution.
static void SetTripSeed(uint seedval)
QwCombinedBCM(TString name)
TString GetSubElementName(Int_t index) override
Double_t fProbabilityOfTrip
void ProcessEvent() override
VQwHardwareChannel * GetCharge() override
std::vector< Double_t > fWeights
size_t GetNumberOfElements() override
std::vector< QwBCM< T > * > fElement
void GetProjectedCharge(VQwBCM *device) override
static std::function< double()> fRandomVariable
Internal normal random variable.
void LoadMockDataParameters(QwParameterFile ¶mfile) override
UInt_t UpdateErrorFlag() override
Bool_t ApplySingleEventCuts() override
QwCombinedBCM(const QwCombinedBCM &source)
~QwCombinedBCM() override
VQwBCM & operator=(const VQwBCM &value) override
void SetBCMForCombo(VQwBCM *bcm, Double_t weight, Double_t sumqw) override
void RandomizeEventData(int helicity=0, double time=0.0) override
static std::mt19937 fRandomnessGenerator
Internal randomness generator.
Templated concrete beam current monitor implementation.
void SetPedestal(Double_t ped) override
Set the pedestal value for the beam current monitor.
void SetCalibrationFactor(Double_t calib) override
Set the calibration factor for the beam current monitor.
Abstract base for beam current monitors (BCMs)