JAPAn
Just Another Parity Analyzer
Loading...
Searching...
No Matches
VQwBCM Class Referenceabstract

Abstract base for beam current monitors (BCMs) More...

#include <VQwBCM.h>

+ Inheritance diagram for VQwBCM:
+ Collaboration diagram for VQwBCM:

Public Member Functions

 ~VQwBCM () override
 
Int_t ProcessEvBuffer (UInt_t *buffer, UInt_t word_position_in_buffer, UInt_t subelement=0) override=0
 Process the CODA event buffer for this element.
 
void ConstructHistograms (TDirectory *folder, TString &prefix) override=0
 Construct the histograms for this data element.
 
void FillHistograms () override=0
 Fill the histograms for this data element.
 
virtual void SetSingleEventCuts (UInt_t errorflag, Double_t min, Double_t max, Double_t stability, Double_t burplevel)=0
 Inherited from VQwDataElement to set the upper and lower limits (fULimit and fLLimit), stability % and the error flag on this channel.
 
virtual void Ratio (const VQwBCM &, const VQwBCM &)
 
void ClearEventData () override=0
 Clear the event data in this element.
 
virtual void InitializeChannel (TString name, TString datatosave)=0
 
virtual void InitializeChannel (TString subsystem, TString name, TString datatosave)=0
 
void LoadChannelParameters (QwParameterFile &paramfile) override=0
 
Bool_t NeedsExternalClock () override=0
 
void SetExternalClockPtr (const VQwHardwareChannel *clock) override=0
 
void SetExternalClockName (const std::string name) override=0
 
Double_t GetNormClockValue () override=0
 
virtual void SetDefaultSampleSize (Int_t sample_size)=0
 
virtual void SetEventCutMode (Int_t bcuts)=0
 
UInt_t UpdateErrorFlag () override
 Update the error flag based on the error flags of internally contained objects Return parameter is the "Eventcut Error Flag".
 
virtual void UpdateErrorFlag (const VQwBCM *ev_error)=0
 
virtual void SetPedestal (Double_t ped)=0
 
virtual void SetCalibrationFactor (Double_t calib)=0
 
virtual void RandomizeEventData (int helicity, double time)=0
 
virtual void EncodeEventData (std::vector< UInt_t > &buffer)=0
 
virtual Bool_t ApplySingleEventCuts ()=0
 
virtual void IncrementErrorCounters ()=0
 
virtual void ProcessEvent ()=0
 
virtual void Scale (Double_t factor)=0
 
virtual void CalculateRunningAverage ()=0
 
virtual void AccumulateRunningSum (const VQwBCM &value, Int_t count=0, Int_t ErrorMask=0xFFFFFFF)=0
 
virtual void DeaccumulateRunningSum (VQwBCM &value, Int_t ErrorMask=0xFFFFFFF)=0
 
virtual void ConstructBranchAndVector (TTree *tree, TString &prefix, QwRootTreeBranchVector &values)=0
 
virtual void ConstructBranch (TTree *tree, TString &prefix)=0
 
virtual void ConstructBranch (TTree *tree, TString &prefix, QwParameterFile &modulelist)=0
 
virtual void FillTreeVector (QwRootTreeBranchVector &values) const =0
 
virtual void ApplyResolutionSmearing ()
 
virtual void FillRawEventData ()
 
virtual void GetProjectedCharge (VQwBCM *)
 
virtual size_t GetNumberOfElements ()
 
virtual TString GetSubElementName (Int_t)
 
virtual Double_t GetValue ()=0
 
virtual Double_t GetValueError ()=0
 
virtual Double_t GetValueWidth ()=0
 
virtual const VQwHardwareChannelGetCharge () const
 
virtual Bool_t CheckForBurpFail (const VQwDataElement *ev_error)
 
virtual void SetRandomEventParameters (Double_t mean, Double_t sigma)=0
 
virtual void SetRandomEventAsymmetry (Double_t asymmetry)=0
 
virtual void AddRandomEventDriftParameters (Double_t amplitude, Double_t phase, Double_t frequency)=0
 
virtual VQwBCMoperator= (const VQwBCM &value)=0
 
virtual VQwBCMoperator+= (const VQwBCM &value)=0
 
virtual VQwBCMoperator-= (const VQwBCM &value)=0
 
virtual void SetBCMForCombo (VQwBCM *bcm, Double_t weight, Double_t sumqw)=0
 
- Public Member Functions inherited from VQwDataElement
 VQwDataElement ()
 Default constructor.
 
 VQwDataElement (const VQwDataElement &value)
 Copy constructor.
 
 ~VQwDataElement () override
 Virtual destructor.
 
void CopyFrom (const VQwDataElement &value)
 
Bool_t IsNameEmpty () const
 Is the name of this element empty?
 
void SetElementName (const TString &name)
 Set the name of this element.
 
virtual const TString & GetElementName () const
 Get the name of this element.
 
virtual void LoadMockDataParameters (QwParameterFile &)
 
size_t GetNumberOfDataWords ()
 Get the number of data words in this data element.
 
UInt_t GetGoodEventCount () const
 
virtual void AssignValueFrom (const VQwDataElement *)
 
VQwDataElementoperator+= (const VQwDataElement &)
 Addition-assignment operator.
 
VQwDataElementoperator-= (const VQwDataElement &)
 Subtraction-assignment operator.
 
void Sum (const VQwDataElement &, const VQwDataElement &)
 Sum operator (base class fallback throws runtime error)
 
void Difference (const VQwDataElement &, const VQwDataElement &)
 Difference operator (base class fallback throws runtime error)
 
void Ratio (const VQwDataElement &, const VQwDataElement &)
 Ratio operator (base class fallback throws runtime error)
 
virtual void PrintValue () const
 Print single line of value and error of this data element.
 
virtual void PrintInfo () const
 Print multiple lines of information about this data element.
 
void SetSingleEventCuts (UInt_t, Double_t, Double_t, Double_t)
 set the upper and lower limits (fULimit and fLLimit), stability % and the error flag on this channel
 
virtual void PrintErrorCounters () const
 report number of events failed due to HW and event cut failure
 
Bool_t CheckForBurpFail (const VQwDataElement *)
 
virtual UInt_t GetEventcutErrorFlag ()
 return the error flag on this channel/device
 
virtual void SetNeedsExternalClock (Bool_t)
 
virtual std::string GetExternalClockName ()
 
TString GetSubsystemName () const
 Return the name of the inheriting subsystem name.
 
void SetSubsystemName (TString sysname)
 Set the name of the inheriting subsystem name.
 
TString GetModuleType () const
 Return the type of the beam instrument.
 
void SetModuleType (TString ModuleType)
 set the type of the beam instrument
 
- Public Member Functions inherited from MQwHistograms
void ShareHistograms (const MQwHistograms *source)
 Share histogram pointers between objects.
 

Static Public Member Functions

static VQwBCMCreate (TString subsystemname, TString type, TString name, TString clock="")
 Factory method to create a concrete BCM instance for the requested module type.
 
static VQwBCMCreate (const VQwBCM &source)
 Copy constructor factory method to clone a BCM from an existing instance.
 
static VQwBCMCreateCombo (TString subsystemname, TString type, TString name)
 Factory method to create a concrete Combined BCM for the requested module type.
 
static VQwBCMCreateCombo (const VQwBCM &source)
 

Protected Member Functions

 VQwBCM (VQwDataElement &beamcurrent)
 
 VQwBCM (VQwDataElement &beamcurrent, TString)
 
virtual VQwHardwareChannelGetCharge ()=0
 
- Protected Member Functions inherited from VQwDataElement
void SetNumberOfDataWords (const UInt_t &numwords)
 Set the number of data words in this data element.
 
VQwDataElementoperator= (const VQwDataElement &value)
 Arithmetic assignment operator: Should only copy event-based data.
 
void UpdateErrorFlag (const UInt_t &error)
 
- Protected Member Functions inherited from MQwHistograms
 MQwHistograms ()
 Default constructor.
 
 MQwHistograms (const MQwHistograms &source)
 Copy constructor.
 
virtual ~MQwHistograms ()
 Virtual destructor.
 
MQwHistogramsoperator= (const MQwHistograms &value)
 
void Fill_Pointer (TH1_ptr hist_ptr, Double_t value)
 
void AddHistogram (TH1 *h)
 Register a histogram.
 

Protected Attributes

VQwDataElementfBeamCurrent_ref
 
- Protected Attributes inherited from VQwDataElement
TString fElementName
 Name of this data element.
 
UInt_t fNumberOfDataWords
 Number of raw data words in this data element.
 
UInt_t fGoodEventCount
 Number of good events accumulated in this element.
 
TString fSubsystemName
 
TString fModuleType
 
UInt_t fErrorFlag
 This the standard error code generated for the channel that contains the global/local/stability flags and the Device error code (Unique error code for HW failures)
 
UInt_t fErrorConfigFlag
 contains the global/local/stability flags
 
- Protected Attributes inherited from MQwHistograms
std::vector< TH1_ptrfHistograms
 Histograms associated with this data element.
 

Friends

template<typename T>
class QwBCM
 
template<typename T>
class QwCombinedBCM
 

Additional Inherited Members

- Public Types inherited from VQwDataElement
enum  EDataToSave { kRaw = 0 , kDerived , kMoments }
 

Detailed Description

Abstract base for beam current monitors (BCMs)

Provides the interface for current-like data elements used for normalization and beam quality monitoring. Concrete implementations (e.g., QwBCM<T>, QwCombinedBCM<T>) implement hardware decoding, event processing, and error handling, while this base exposes common hooks for the analysis framework.

Definition at line 52 of file VQwBCM.h.

Constructor & Destructor Documentation

◆ VQwBCM() [1/2]

VQwBCM::VQwBCM ( VQwDataElement & beamcurrent)
inlineprotected

◆ VQwBCM() [2/2]

VQwBCM::VQwBCM ( VQwDataElement & beamcurrent,
TString  )
inlineprotected

Definition at line 65 of file VQwBCM.h.

65: fBeamCurrent_ref(beamcurrent) { };

References fBeamCurrent_ref, and VQwDataElement::VQwDataElement().

+ Here is the call graph for this function:

◆ ~VQwBCM()

VQwBCM::~VQwBCM ( )
inlineoverride

Definition at line 68 of file VQwBCM.h.

68{ };

Member Function Documentation

◆ AccumulateRunningSum()

virtual void VQwBCM::AccumulateRunningSum ( const VQwBCM & value,
Int_t count = 0,
Int_t ErrorMask = 0xFFFFFFF )
pure virtual

Implemented in QwBCM< T >.

References VQwBCM().

+ Here is the call graph for this function:

◆ AddRandomEventDriftParameters()

virtual void VQwBCM::AddRandomEventDriftParameters ( Double_t amplitude,
Double_t phase,
Double_t frequency )
pure virtual

Implemented in QwBCM< T >.

◆ ApplyResolutionSmearing()

virtual void VQwBCM::ApplyResolutionSmearing ( )
inlinevirtual

Reimplemented in QwBCM< T >.

Definition at line 117 of file VQwBCM.h.

118 {std::cerr << "ApplyResolutionSmearing is undefined!!!\n";}

Referenced by QwCombinedBCM< T >::GetProjectedCharge().

+ Here is the caller graph for this function:

◆ ApplySingleEventCuts()

virtual Bool_t VQwBCM::ApplySingleEventCuts ( )
pure virtual

Implemented in QwBCM< T >, and QwCombinedBCM< T >.

◆ CalculateRunningAverage()

virtual void VQwBCM::CalculateRunningAverage ( )
pure virtual

Implemented in QwBCM< T >.

◆ CheckForBurpFail()

virtual Bool_t VQwBCM::CheckForBurpFail ( const VQwDataElement * ev_error)
inlinevirtual

Reimplemented in QwBCM< T >.

Definition at line 148 of file VQwBCM.h.

148 {
149 return VQwDataElement::CheckForBurpFail(ev_error);
150 }
Bool_t CheckForBurpFail(const VQwDataElement *)

References VQwDataElement::CheckForBurpFail(), and VQwDataElement::VQwDataElement().

+ Here is the call graph for this function:

◆ ClearEventData()

void VQwBCM::ClearEventData ( )
overridepure virtual

Clear the event data in this element.

Reimplemented from VQwDataElement.

Implemented in QwBCM< T >.

◆ ConstructBranch() [1/2]

virtual void VQwBCM::ConstructBranch ( TTree * tree,
TString & prefix )
pure virtual

Implemented in QwBCM< T >.

◆ ConstructBranch() [2/2]

virtual void VQwBCM::ConstructBranch ( TTree * tree,
TString & prefix,
QwParameterFile & modulelist )
pure virtual

Implemented in QwBCM< T >.

◆ ConstructBranchAndVector()

virtual void VQwBCM::ConstructBranchAndVector ( TTree * tree,
TString & prefix,
QwRootTreeBranchVector & values )
pure virtual

Implemented in QwBCM< T >.

◆ ConstructHistograms()

void VQwBCM::ConstructHistograms ( TDirectory * folder,
TString & prefix )
overridepure virtual

Construct the histograms for this data element.

Implements VQwDataElement.

Implemented in QwBCM< T >.

◆ Create() [1/2]

VQwBCM * VQwBCM::Create ( const VQwBCM & source)
static

Copy constructor factory method to clone a BCM from an existing instance.

Parameters
sourceReference BCM to copy from.
Returns
Pointer to newly created BCM copy.

Creates a deep copy of the source BCM by determining its concrete type and calling the appropriate template constructor. Preserves all calibration parameters and configuration from the source.

Definition at line 74 of file VQwBCM.cc.

75{
76 Bool_t localDebug = kFALSE;
77 TString type = source.GetModuleType();
78 type.ToUpper();
79 if( localDebug ) QwMessage<<"Creating BCM of type: "<<type<<QwLog::endl;
80 // (jc2) As a first try, let's do this the ugly way (but rather very
81 // simple), just list out the types of BCM's supported by this code!!!
82 if( type == "VQWK") {
83 return new QwBCM<QwVQWK_Channel>(dynamic_cast<const QwBCM<QwVQWK_Channel>&>(source));
84 } else if ( type == "ADC18" ) {
85 return new QwBCM<QwADC18_Channel>(dynamic_cast<const QwBCM<QwADC18_Channel>&>(source));
86 } else if ( type == "SIS3801" ) {
87 return new QwBCM<QwSIS3801_Channel>(dynamic_cast<const QwBCM<QwSIS3801_Channel>&>(source));
88 } else if ( type == "SCALER" || type == "SIS3801D24" ) {
89 return new QwBCM<QwSIS3801D24_Channel>(dynamic_cast<const QwBCM<QwSIS3801D24_Channel>&>(source));
90 } else if ( type == "MOLLERADC" ) {
91 return new QwBCM<QwMollerADC_Channel>(dynamic_cast<const QwBCM<QwMollerADC_Channel>&>(source));
92 } else { // Unsupported one!
93 QwWarning << "BCM of type="<<type<<" is UNSUPPORTED!!\n";
94 exit(-1);
95 }
96}
#define QwWarning
Predefined log drain for warnings.
Definition QwLog.h:44
#define QwMessage
Predefined log drain for regular messages.
Definition QwLog.h:49
static std::ostream & endl(std::ostream &)
End of the line.
Definition QwLog.cc:297
TString GetModuleType() const
Return the type of the beam instrument.
friend class QwBCM
Definition VQwBCM.h:60

References QwLog::endl(), VQwDataElement::GetModuleType(), QwBCM, QwMessage, QwWarning, and VQwBCM().

+ Here is the call graph for this function:

◆ Create() [2/2]

VQwBCM * VQwBCM::Create ( TString subsystemname,
TString name,
TString type,
TString clock = "" )
static

Factory method to create a concrete BCM instance for the requested module type.

Parameters
subsystemnameName of the parent subsystem.
nameBCM channel name.
typeModule type string (VQWK, ADC18, SIS3801, SIS3801D24/SCALER, MOLLERADC).
clockClock reference name for timing-based modules.
Returns
Pointer to newly created BCM instance.

Creates appropriate concrete BCM template instantiation based on module type. Supported types include integrating ADCs (VQWK, ADC18, MOLLERADC) and scalers (SIS3801, SIS3801D24). Each type uses the corresponding channel class for data handling and calibration.

Definition at line 41 of file VQwBCM.cc.

42{
43 Bool_t localDebug = kFALSE;
44 type.ToUpper();
45 if( localDebug ) QwMessage<<"Creating BCM of type: "<<type<<" with name: "<<
46 name<<". Subsystem Name: " <<subsystemname<<" and clock name="<<clock<<"\n";
47 // (jc2) As a first try, let's do this the ugly way (but rather very
48 // simple), just list out the types of BCM's supported by this code!!!
49 if( type == "VQWK") {
50 return new QwBCM<QwVQWK_Channel>(subsystemname,name,type);
51 } else if ( type == "ADC18" ) {
52 return new QwBCM<QwADC18_Channel>(subsystemname,name,type,clock);
53 } else if ( type == "SIS3801" ) {
54 return new QwBCM<QwSIS3801_Channel>(subsystemname,name,type,clock);
55 } else if ( type == "SCALER" || type == "SIS3801D24" ) {
56 return new QwBCM<QwSIS3801D24_Channel>(subsystemname,name,type,clock);
57 } else if ( type == "MOLLERADC" ) {
58 return new QwBCM<QwMollerADC_Channel>(subsystemname,name,type,clock);
59 } else { // Unsupported one!
60 QwWarning << "BCM of type="<<type<<" is UNSUPPORTED!!\n";
61 exit(-1);
62 }
63}

References QwBCM, QwMessage, QwWarning, and VQwBCM().

Referenced by QwBeamLine::AddToElementList(), and QwBeamLine::CopyTemplatedDataElements().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ CreateCombo() [1/2]

VQwBCM * VQwBCM::CreateCombo ( const VQwBCM & source)
static

Definition at line 125 of file VQwBCM.cc.

126{
127 Bool_t localDebug = kFALSE;
128 TString type = source.GetModuleType();
129 type.ToUpper();
130 if( localDebug ) QwMessage<<"Creating CombinedBCM of type: "<<type<< QwLog::endl;
131 // (jc2) As a first try, let's do this the ugly way (but rather very
132 // simple), just list out the types of BCM's supported by this code!!!
133 if( type == "VQWK") {
134 return new QwCombinedBCM<QwVQWK_Channel>(dynamic_cast<const QwCombinedBCM<QwVQWK_Channel>&>(source));
135 } else if ( type == "ADC18" ) {
136 return new QwCombinedBCM<QwADC18_Channel>(dynamic_cast<const QwCombinedBCM<QwADC18_Channel>&>(source));
137 } else if ( type == "SIS3801" ) {
138 return new QwCombinedBCM<QwSIS3801_Channel>(dynamic_cast<const QwCombinedBCM<QwSIS3801_Channel>&>(source));
139 } else if ( type == "SCALER" || type == "SIS3801D24" ) {
140 return new QwCombinedBCM<QwSIS3801D24_Channel>(dynamic_cast<const QwCombinedBCM<QwSIS3801D24_Channel>&>(source));
141 } else if ( type == "MOLLERADC" ) {
142 return new QwCombinedBCM<QwMollerADC_Channel>(dynamic_cast<const QwCombinedBCM<QwMollerADC_Channel>&>(source));
143 } else { // Unsupported one!
144 QwWarning << "BCM of type="<<type<<" is UNSUPPORTED!!\n";
145 exit(-1);
146 }
147}
friend class QwCombinedBCM
Definition VQwBCM.h:61

References QwLog::endl(), VQwDataElement::GetModuleType(), QwCombinedBCM, QwMessage, QwWarning, and VQwBCM().

+ Here is the call graph for this function:

◆ CreateCombo() [2/2]

VQwBCM * VQwBCM::CreateCombo ( TString subsystemname,
TString type,
TString name )
static

Factory method to create a concrete Combined BCM for the requested module type.

Definition at line 101 of file VQwBCM.cc.

102{
103 Bool_t localDebug = kFALSE;
104 type.ToUpper();
105 if( localDebug ) QwMessage<<"Creating CombinedBCM of type: "<<type<<" with name: "<<
106 name<<". Subsystem Name: " <<subsystemname<<"\n";
107 // (jc2) As a first try, let's do this the ugly way (but rather very
108 // simple), just list out the types of BCM's supported by this code!!!
109 if( type == "VQWK") {
110 return new QwCombinedBCM<QwVQWK_Channel>(subsystemname,name,type);
111 } else if ( type == "ADC18" ) {
112 return new QwCombinedBCM<QwADC18_Channel>(subsystemname,name,type);
113 } else if ( type == "SIS3801" ) {
114 return new QwCombinedBCM<QwSIS3801_Channel>(subsystemname,name,type);
115 } else if ( type == "SCALER" || type == "SIS3801D24" ) {
116 return new QwCombinedBCM<QwSIS3801D24_Channel>(subsystemname,name,type);
117 } else if ( type == "MOLLERADC" ) {
118 return new QwCombinedBCM<QwMollerADC_Channel>(subsystemname,name,type);
119 } else { // Unsupported one!
120 QwWarning << "BCM of type="<<type<<" is UNSUPPORTED!!\n";
121 exit(-1);
122 }
123}

References QwCombinedBCM, QwMessage, QwWarning, and VQwBCM().

Referenced by QwBeamLine::CopyTemplatedDataElements(), and QwBeamLine::LoadChannelMap().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ DeaccumulateRunningSum()

virtual void VQwBCM::DeaccumulateRunningSum ( VQwBCM & value,
Int_t ErrorMask = 0xFFFFFFF )
pure virtual

Implemented in QwBCM< T >.

References VQwBCM().

+ Here is the call graph for this function:

◆ EncodeEventData()

virtual void VQwBCM::EncodeEventData ( std::vector< UInt_t > & buffer)
pure virtual

Implemented in QwBCM< T >.

◆ FillHistograms()

void VQwBCM::FillHistograms ( )
overridepure virtual

Fill the histograms for this data element.

Implements VQwDataElement.

Implemented in QwBCM< T >.

◆ FillRawEventData()

virtual void VQwBCM::FillRawEventData ( )
inlinevirtual

Reimplemented in QwBCM< T >.

Definition at line 119 of file VQwBCM.h.

120 {std::cerr << "FillRawEventData for VQwBPM not implemented!\n";};

Referenced by QwCombinedBCM< T >::GetProjectedCharge().

+ Here is the caller graph for this function:

◆ FillTreeVector()

virtual void VQwBCM::FillTreeVector ( QwRootTreeBranchVector & values) const
pure virtual

Implemented in QwBCM< T >.

◆ GetCharge() [1/2]

virtual const VQwHardwareChannel * VQwBCM::GetCharge ( ) const
inlinevirtual

Reimplemented in QwCombinedBCM< T >.

Definition at line 143 of file VQwBCM.h.

143 {
144 return const_cast<VQwBCM*>(this)->GetCharge();
145 }
VQwBCM(VQwDataElement &beamcurrent)
Definition VQwBCM.h:64
virtual const VQwHardwareChannel * GetCharge() const
Definition VQwBCM.h:143

References GetCharge(), and VQwBCM().

Referenced by GetCharge(), and QwCombinedBCM< T >::GetProjectedCharge().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetCharge() [2/2]

virtual VQwHardwareChannel * VQwBCM::GetCharge ( )
protectedpure virtual

Implemented in QwBCM< T >, and QwCombinedBCM< T >.

◆ GetNormClockValue()

Double_t VQwBCM::GetNormClockValue ( )
overridepure virtual

Reimplemented from VQwDataElement.

Implemented in QwBCM< T >.

◆ GetNumberOfElements()

virtual size_t VQwBCM::GetNumberOfElements ( )
inlinevirtual

Reimplemented in QwCombinedBCM< T >.

Definition at line 122 of file VQwBCM.h.

122{return size_t(1);}

◆ GetProjectedCharge()

virtual void VQwBCM::GetProjectedCharge ( VQwBCM * )
inlinevirtual

Reimplemented in QwCombinedBCM< T >.

Definition at line 121 of file VQwBCM.h.

121{};

References VQwBCM().

+ Here is the call graph for this function:

◆ GetSubElementName()

virtual TString VQwBCM::GetSubElementName ( Int_t )
inlinevirtual

Reimplemented in QwCombinedBCM< T >.

Definition at line 123 of file VQwBCM.h.

124 {
125 std::cerr << "GetSubElementName() is not implemented!! for device: " << GetElementName() << "\n";
126 return TString("OBJECT_UNDEFINED"); // Return an erroneous TString
127 }
virtual const TString & GetElementName() const
Get the name of this element.

References VQwDataElement::GetElementName().

+ Here is the call graph for this function:

◆ GetValue()

virtual Double_t VQwBCM::GetValue ( )
pure virtual

Implemented in QwBCM< T >.

◆ GetValueError()

virtual Double_t VQwBCM::GetValueError ( )
pure virtual

Implemented in QwBCM< T >.

◆ GetValueWidth()

virtual Double_t VQwBCM::GetValueWidth ( )
pure virtual

Implemented in QwBCM< T >.

◆ IncrementErrorCounters()

virtual void VQwBCM::IncrementErrorCounters ( )
pure virtual

Implemented in QwBCM< T >.

◆ InitializeChannel() [1/2]

virtual void VQwBCM::InitializeChannel ( TString name,
TString datatosave )
pure virtual

Implemented in QwBCM< T >, and QwCombinedBCM< T >.

◆ InitializeChannel() [2/2]

virtual void VQwBCM::InitializeChannel ( TString subsystem,
TString name,
TString datatosave )
pure virtual

Implemented in QwBCM< T >, and QwCombinedBCM< T >.

◆ LoadChannelParameters()

void VQwBCM::LoadChannelParameters ( QwParameterFile & paramfile)
overridepure virtual

Reimplemented from VQwDataElement.

Implemented in QwBCM< T >.

◆ NeedsExternalClock()

Bool_t VQwBCM::NeedsExternalClock ( )
overridepure virtual

Reimplemented from VQwDataElement.

Implemented in QwBCM< T >.

◆ operator+=()

virtual VQwBCM & VQwBCM::operator+= ( const VQwBCM & value)
pure virtual

Implemented in QwBCM< T >.

References VQwBCM().

+ Here is the call graph for this function:

◆ operator-=()

virtual VQwBCM & VQwBCM::operator-= ( const VQwBCM & value)
pure virtual

Implemented in QwBCM< T >.

References VQwBCM().

+ Here is the call graph for this function:

◆ operator=()

virtual VQwBCM & VQwBCM::operator= ( const VQwBCM & value)
pure virtual

Implemented in QwBCM< T >, and QwCombinedBCM< T >.

References VQwBCM().

+ Here is the call graph for this function:

◆ ProcessEvBuffer()

Int_t VQwBCM::ProcessEvBuffer ( UInt_t * buffer,
UInt_t num_words_left,
UInt_t subelement = 0 )
overridepure virtual

Process the CODA event buffer for this element.

Implements VQwDataElement.

Implemented in QwBCM< T >, and QwCombinedBCM< T >.

References QwBPMStripline< T >::subelement.

◆ ProcessEvent()

virtual void VQwBCM::ProcessEvent ( )
pure virtual

Implemented in QwBCM< T >, and QwCombinedBCM< T >.

◆ RandomizeEventData()

virtual void VQwBCM::RandomizeEventData ( int helicity,
double time )
pure virtual

Implemented in QwBCM< T >, and QwCombinedBCM< T >.

◆ Ratio()

virtual void VQwBCM::Ratio ( const VQwBCM & ,
const VQwBCM &  )
inlinevirtual

Reimplemented in QwBCM< T >.

Definition at line 76 of file VQwBCM.h.

77 { std::cerr << "Ratio not defined! (VQwBCM)" << std::endl; }

References VQwBCM().

+ Here is the call graph for this function:

◆ Scale()

virtual void VQwBCM::Scale ( Double_t factor)
pure virtual

Implemented in QwBCM< T >.

◆ SetBCMForCombo()

virtual void VQwBCM::SetBCMForCombo ( VQwBCM * bcm,
Double_t weight,
Double_t sumqw )
pure virtual

Implemented in QwBCM< T >, and QwCombinedBCM< T >.

References VQwBCM().

+ Here is the call graph for this function:

◆ SetCalibrationFactor()

virtual void VQwBCM::SetCalibrationFactor ( Double_t calib)
pure virtual

Implemented in QwBCM< T >, and QwCombinedBCM< T >.

◆ SetDefaultSampleSize()

virtual void VQwBCM::SetDefaultSampleSize ( Int_t sample_size)
pure virtual

Implemented in QwBCM< T >.

◆ SetEventCutMode()

virtual void VQwBCM::SetEventCutMode ( Int_t bcuts)
pure virtual

Implemented in QwBCM< T >.

◆ SetExternalClockName()

void VQwBCM::SetExternalClockName ( const std::string name)
overridepure virtual

Reimplemented from VQwDataElement.

Implemented in QwBCM< T >.

◆ SetExternalClockPtr()

void VQwBCM::SetExternalClockPtr ( const VQwHardwareChannel * clock)
overridepure virtual

Reimplemented from VQwDataElement.

Implemented in QwBCM< T >.

◆ SetPedestal()

virtual void VQwBCM::SetPedestal ( Double_t ped)
pure virtual

Implemented in QwBCM< T >, and QwCombinedBCM< T >.

◆ SetRandomEventAsymmetry()

virtual void VQwBCM::SetRandomEventAsymmetry ( Double_t asymmetry)
pure virtual

Implemented in QwBCM< T >.

◆ SetRandomEventParameters()

virtual void VQwBCM::SetRandomEventParameters ( Double_t mean,
Double_t sigma )
pure virtual

Implemented in QwBCM< T >.

◆ SetSingleEventCuts()

virtual void VQwBCM::SetSingleEventCuts ( UInt_t errorflag,
Double_t min,
Double_t max,
Double_t stability,
Double_t burplevel )
pure virtual

Inherited from VQwDataElement to set the upper and lower limits (fULimit and fLLimit), stability % and the error flag on this channel.

Implemented in QwBCM< T >.

◆ UpdateErrorFlag() [1/2]

UInt_t VQwBCM::UpdateErrorFlag ( )
inlineoverridevirtual

Update the error flag based on the error flags of internally contained objects Return parameter is the "Eventcut Error Flag".

Reimplemented from VQwDataElement.

Definition at line 93 of file VQwBCM.h.

93{return this->GetEventcutErrorFlag();};
virtual UInt_t GetEventcutErrorFlag()
return the error flag on this channel/device

References VQwDataElement::GetEventcutErrorFlag().

+ Here is the call graph for this function:

◆ UpdateErrorFlag() [2/2]

virtual void VQwBCM::UpdateErrorFlag ( const VQwBCM * ev_error)
pure virtual

Implemented in QwBCM< T >.

References VQwBCM().

+ Here is the call graph for this function:

Friends And Related Symbol Documentation

◆ QwBCM

template<typename T>
friend class QwBCM
friend

Definition at line 60 of file VQwBCM.h.

References QwBCM.

Referenced by Create(), Create(), and QwBCM.

◆ QwCombinedBCM

template<typename T>
friend class QwCombinedBCM
friend

Definition at line 61 of file VQwBCM.h.

References QwCombinedBCM.

Referenced by CreateCombo(), CreateCombo(), QwCombinedBCM, and QwBCM< T >::QwCombinedBCM< T >.

Field Documentation

◆ fBeamCurrent_ref

VQwDataElement& VQwBCM::fBeamCurrent_ref
protected

Definition at line 180 of file VQwBCM.h.

Referenced by VQwBCM(), and VQwBCM().


The documentation for this class was generated from the following files: