12#include "boost/random.hpp"
23#ifdef __USE_DATABASE__
65 void InitializeChannel(TString subsystem, TString name, TString datatosave)
override;
133 static boost::variate_generator
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 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
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
static boost::random::uniform_real_distribution< double > fDistribution
Internal normal probability distribution.
static boost::variate_generator< boost::mt19937, boost::random::uniform_real_distribution< double > > fRandomVariable
Internal normal random variable.
void SetBCMForCombo(VQwBCM *bcm, Double_t weight, Double_t sumqw) override
static boost::mt19937 fRandomnessGenerator
Internal randomness generator.
void RandomizeEventData(int helicity=0, double time=0.0) override
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)