JAPAn
Just Another Parity Analyzer
|
Standard clock channel with calibration representing frequency. More...
#include <QwClock.h>
Public Member Functions | |
QwClock () | |
QwClock (TString subsystemname, TString name, TString type="") | |
QwClock (const QwClock &source) | |
~QwClock () override | |
void | LoadChannelParameters (QwParameterFile ¶mfile) override |
Int_t | ProcessEvBuffer (UInt_t *buffer, UInt_t word_position_in_buffer, UInt_t subelement=0) override |
Process the CODA event buffer for this element. | |
void | InitializeChannel (TString subsystem, TString name, TString datatosave, TString type="") override |
void | ClearEventData () override |
Clear the event data in this element. | |
void | EncodeEventData (std::vector< UInt_t > &buffer) |
void | ProcessEvent () override |
Bool_t | ApplyHWChecks () |
Bool_t | ApplySingleEventCuts () override |
void | IncrementErrorCounters () override |
Bool_t | CheckForBurpFail (const QwClock *ev_error) |
Bool_t | CheckForBurpFail (const VQwClock *ev_error) override |
Bool_t | CheckForBurpFail (const VQwDataElement *ev_error) |
void | PrintErrorCounters () const override |
report number of events failed due to HW and event cut failure | |
UInt_t | GetEventcutErrorFlag () override |
return the error flag on this channel/device | |
UInt_t | UpdateErrorFlag () override |
Update the error flag based on the error flags of internally contained objects Return parameter is the "Eventcut Error Flag". | |
void | UpdateErrorFlag (const QwClock *ev_error) |
void | SetSingleEventCuts (UInt_t errorflag, Double_t min=0, Double_t max=0, Double_t stability=0, Double_t burplevel=0) override |
Inherited from VQwDataElement to set the upper and lower limits (fULimit and fLLimit), stability % and the error flag on this channel. | |
void | SetDefaultSampleSize (Int_t sample_size) |
void | SetEventCutMode (Int_t bcuts) override |
void | PrintValue () const override |
Print single line of value and error of this data element. | |
void | PrintInfo () const override |
Print multiple lines of information about this data element. | |
VQwClock & | operator= (const VQwClock &value) override |
VQwClock & | operator+= (const VQwClock &value) override |
VQwClock & | operator-= (const VQwClock &value) override |
QwClock & | operator= (const QwClock &value) |
QwClock & | operator+= (const QwClock &value) |
QwClock & | operator-= (const QwClock &value) |
void | Ratio (const VQwClock &numer, const VQwClock &denom) override |
void | Ratio (const QwClock &numer, const QwClock &denom) |
void | Scale (Double_t factor) override |
void | AccumulateRunningSum (const VQwClock &value, Int_t count=0, Int_t ErrorMask=0xFFFFFFF) override |
void | DeaccumulateRunningSum (VQwClock &value, Int_t ErrorMask=0xFFFFFFF) override |
void | CalculateRunningAverage () override |
void | SetPedestal (Double_t ped) override |
void | SetCalibrationFactor (Double_t calib) override |
void | ConstructHistograms (TDirectory *folder, TString &prefix) override |
Construct the histograms for this data element. | |
void | FillHistograms () override |
Fill the histograms for this data element. | |
void | ConstructBranchAndVector (TTree *tree, TString &prefix, QwRootTreeBranchVector &values) override |
void | ConstructBranch (TTree *tree, TString &prefix) override |
void | ConstructBranch (TTree *tree, TString &prefix, QwParameterFile &modulelist) override |
void | FillTreeVector (QwRootTreeBranchVector &values) const override |
Double_t | GetNormClockValue () override |
Double_t | GetStandardClockValue () override |
const VQwHardwareChannel * | GetTime () const override |
![]() | |
VQwClock () | |
VQwClock (const VQwClock &source) | |
~VQwClock () override | |
![]() | |
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 *) |
VQwDataElement & | operator+= (const VQwDataElement &) |
Addition-assignment operator. | |
VQwDataElement & | operator-= (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) | |
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 | |
Bool_t | CheckForBurpFail (const VQwDataElement *) |
virtual void | SetNeedsExternalClock (Bool_t) |
virtual Bool_t | NeedsExternalClock () |
virtual std::string | GetExternalClockName () |
virtual void | SetExternalClockPtr (const VQwHardwareChannel *) |
virtual void | SetExternalClockName (const std::string) |
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 | |
![]() | |
void | ShareHistograms (const MQwHistograms *source) |
Share histogram pointers between objects. | |
Private Attributes | |
Double_t | fPedestal |
Double_t | fCalibration |
Double_t | fULimit |
Double_t | fLLimit |
T | fClock |
Int_t | fDeviceErrorCode |
Bool_t | bEVENTCUTMODE |
Double_t | fNormalizationValue |
Static Private Attributes | |
static const Bool_t | bDEBUG =kFALSE |
Additional Inherited Members | |
![]() | |
enum | EDataToSave { kRaw = 0 , kDerived , kMoments } |
![]() | |
static VQwClock * | Create (TString subsystemname, TString type, TString name) |
static VQwClock * | Create (const VQwClock &source) |
![]() | |
void | SetNumberOfDataWords (const UInt_t &numwords) |
Set the number of data words in this data element. | |
VQwDataElement & | operator= (const VQwDataElement &value) |
Arithmetic assignment operator: Should only copy event-based data. | |
void | UpdateErrorFlag (const UInt_t &error) |
![]() | |
MQwHistograms () | |
Default constructor. | |
MQwHistograms (const MQwHistograms &source) | |
Copy constructor. | |
virtual | ~MQwHistograms () |
Virtual destructor. | |
MQwHistograms & | operator= (const MQwHistograms &value) |
void | Fill_Pointer (TH1_ptr hist_ptr, Double_t value) |
void | AddHistogram (TH1 *h) |
Register a histogram. | |
![]() | |
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 | |
![]() | |
std::vector< TH1_ptr > | fHistograms |
Histograms associated with this data element. | |
Standard clock channel with calibration representing frequency.
Provides timing and normalization support for subsystems that need an external clock. The calibration factor encodes the clock frequency. Implements specialized polymorphic dispatch for burp-failure checks via the VQwClock base as per the dual-operator pattern.
Definition at line 45 of file QwClock.h.
Referenced by AccumulateRunningSum(), CheckForBurpFail(), CheckForBurpFail(), CheckForBurpFail(), DeaccumulateRunningSum(), operator+=(), operator+=(), operator-=(), operator-=(), operator=(), operator=(), QwClock(), Ratio(), Ratio(), and UpdateErrorFlag().
|
inline |
Definition at line 46 of file QwClock.h.
References InitializeChannel(), and VQwDataElement::SetSubsystemName().
Definition at line 50 of file QwClock.h.
References fCalibration, fClock, fLLimit, fNormalizationValue, fPedestal, fULimit, QwClock(), and VQwClock::VQwClock().
|
overridevirtual |
Implements VQwClock.
Definition at line 309 of file QwClock.cc.
References fClock, QwClock(), and VQwClock::VQwClock().
Bool_t QwClock< T >::ApplyHWChecks | ( | ) |
Definition at line 89 of file QwClock.cc.
References fClock.
Referenced by ProcessEvBuffer().
|
overridevirtual |
|
overridevirtual |
Definition at line 76 of file QwClock.h.
References fClock, and QwClock().
Referenced by CheckForBurpFail(), and CheckForBurpFail().
|
inlineoverridevirtual |
Implements VQwClock.
Definition at line 81 of file QwClock.h.
References CheckForBurpFail(), QwClock(), and VQwClock::VQwClock().
|
inline |
Definition at line 90 of file QwClock.h.
References CheckForBurpFail(), QwClock(), and VQwDataElement::VQwDataElement().
|
overridevirtual |
Clear the event data in this element.
Implements VQwClock.
Definition at line 56 of file QwClock.cc.
References fClock.
|
overridevirtual |
Implements VQwClock.
Definition at line 377 of file QwClock.cc.
References fClock, and VQwDataElement::GetElementName().
|
overridevirtual |
Implements VQwClock.
Definition at line 390 of file QwClock.cc.
References QwLog::endl(), fClock, VQwDataElement::GetElementName(), QwParameterFile::HasValue(), and QwMessage.
|
overridevirtual |
Implements VQwClock.
Definition at line 365 of file QwClock.cc.
References fClock, and VQwDataElement::GetElementName().
|
overridevirtual |
Construct the histograms for this data element.
Implements VQwClock.
Definition at line 335 of file QwClock.cc.
References fClock, and VQwDataElement::GetElementName().
|
overridevirtual |
Implements VQwClock.
Definition at line 315 of file QwClock.cc.
References fClock, QwClock(), and VQwClock::VQwClock().
void QwClock< T >::EncodeEventData | ( | std::vector< UInt_t > & | buffer | ) |
Definition at line 77 of file QwClock.cc.
References fClock.
|
overridevirtual |
Fill the histograms for this data element.
Implements VQwClock.
Definition at line 349 of file QwClock.cc.
References fClock, and VQwDataElement::GetElementName().
|
overridevirtual |
Implements VQwClock.
Definition at line 412 of file QwClock.cc.
References fClock, and VQwDataElement::GetElementName().
|
inlineoverridevirtual |
return the error flag on this channel/device
Reimplemented from VQwDataElement.
Definition at line 100 of file QwClock.h.
References fClock.
Referenced by UpdateErrorFlag().
|
inlineoverridevirtual |
|
inlineoverridevirtual |
|
inlineoverridevirtual |
|
inlineoverridevirtual |
|
overridevirtual |
Implements VQwClock.
Definition at line 42 of file QwClock.cc.
References fClock, fLLimit, fULimit, SetCalibrationFactor(), VQwDataElement::SetElementName(), VQwDataElement::SetModuleType(), and SetPedestal().
Referenced by QwClock().
|
inlineoverridevirtual |
Definition at line 199 of file QwClock.cc.
References fCalibration, fClock, fPedestal, VQwDataElement::GetElementName(), and QwClock().
|
overridevirtual |
Implements VQwClock.
Definition at line 211 of file QwClock.cc.
References fCalibration, fClock, fPedestal, VQwDataElement::GetElementName(), QwClock(), and VQwClock::VQwClock().
Definition at line 251 of file QwClock.cc.
References fCalibration, fClock, fPedestal, VQwDataElement::GetElementName(), and QwClock().
|
overridevirtual |
Implements VQwClock.
Definition at line 237 of file QwClock.cc.
References fCalibration, fClock, fPedestal, VQwDataElement::GetElementName(), QwClock(), and VQwClock::VQwClock().
Definition at line 150 of file QwClock.cc.
References fCalibration, fClock, fPedestal, VQwDataElement::GetElementName(), and QwClock().
|
overridevirtual |
Implements VQwClock.
Definition at line 168 of file QwClock.cc.
References fCalibration, fClock, fPedestal, VQwDataElement::GetElementName(), QwClock(), and VQwClock::VQwClock().
|
overridevirtual |
report number of events failed due to HW and event cut failure
Reimplemented from VQwDataElement.
Definition at line 135 of file QwClock.cc.
References fClock.
|
overridevirtual |
Print multiple lines of information about this data element.
Reimplemented from VQwDataElement.
Definition at line 327 of file QwClock.cc.
References fClock.
|
overridevirtual |
Print single line of value and error of this data element.
Reimplemented from VQwDataElement.
Definition at line 321 of file QwClock.cc.
References fClock.
|
overridevirtual |
Process the CODA event buffer for this element.
Implements VQwClock.
Definition at line 142 of file QwClock.cc.
References ApplyHWChecks(), fClock, and QwBPMStripline< T >::subelement.
|
overridevirtual |
void QwClock< T >::Ratio | ( | const QwClock< T > & | numer, |
const QwClock< T > & | denom ) |
Definition at line 283 of file QwClock.cc.
References fCalibration, fClock, fPedestal, VQwDataElement::GetElementName(), and QwClock().
|
overridevirtual |
Reimplemented from VQwClock.
Definition at line 276 of file QwClock.cc.
References QwClock(), Ratio(), and VQwClock::VQwClock().
Referenced by Ratio().
|
overridevirtual |
|
overridevirtual |
Implements VQwClock.
Definition at line 35 of file QwClock.cc.
References fCalibration, and fClock.
Referenced by InitializeChannel().
void QwClock< T >::SetDefaultSampleSize | ( | Int_t | sample_size | ) |
Definition at line 110 of file QwClock.cc.
References fClock.
|
inlineoverridevirtual |
Implements VQwClock.
Definition at line 112 of file QwClock.h.
References bEVENTCUTMODE, and fClock.
|
overridevirtual |
Implements VQwClock.
Definition at line 28 of file QwClock.cc.
References fClock, and fPedestal.
Referenced by InitializeChannel().
|
overridevirtual |
Inherited from VQwDataElement to set the upper and lower limits (fULimit and fLLimit), stability % and the error flag on this channel.
Implements VQwClock.
Definition at line 101 of file QwClock.cc.
References QwLog::endl(), fClock, kBCMErrorFlag, and QwMessage.
|
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 103 of file QwClock.h.
References GetEventcutErrorFlag().
|
staticprivate |
Definition at line 179 of file QwClock.h.
Referenced by ApplySingleEventCuts().
|
private |
Definition at line 180 of file QwClock.h.
Referenced by SetEventCutMode().
|
private |
Definition at line 172 of file QwClock.h.
Referenced by GetStandardClockValue(), operator+=(), operator+=(), operator-=(), operator-=(), operator=(), operator=(), QwClock(), Ratio(), and SetCalibrationFactor().
|
private |
Definition at line 175 of file QwClock.h.
Referenced by AccumulateRunningSum(), ApplyHWChecks(), ApplySingleEventCuts(), CalculateRunningAverage(), CheckForBurpFail(), ClearEventData(), ConstructBranch(), ConstructBranch(), ConstructBranchAndVector(), ConstructHistograms(), DeaccumulateRunningSum(), EncodeEventData(), FillHistograms(), FillTreeVector(), GetEventcutErrorFlag(), GetTime(), IncrementErrorCounters(), InitializeChannel(), LoadChannelParameters(), operator+=(), operator+=(), operator-=(), operator-=(), operator=(), operator=(), PrintErrorCounters(), PrintInfo(), PrintValue(), ProcessEvBuffer(), QwClock(), Ratio(), Scale(), SetCalibrationFactor(), SetDefaultSampleSize(), SetEventCutMode(), SetPedestal(), SetSingleEventCuts(), and UpdateErrorFlag().
|
private |
|
private |
Definition at line 173 of file QwClock.h.
Referenced by InitializeChannel(), and QwClock().
|
private |
Definition at line 182 of file QwClock.h.
Referenced by GetNormClockValue(), and QwClock().
|
private |
Definition at line 171 of file QwClock.h.
Referenced by operator+=(), operator+=(), operator-=(), operator-=(), operator=(), operator=(), QwClock(), Ratio(), and SetPedestal().
|
private |
Definition at line 173 of file QwClock.h.
Referenced by ApplySingleEventCuts(), InitializeChannel(), and QwClock().