8 #ifndef __QWSUBSYSTEMARRAYPARITY__
9 #define __QWSUBSYSTEMARRAYPARITY__
80 void Scale(Double_t factor);
136 return (dynamic_cast<VQwSubsystemParity*>(subsys) != 0);
144 #endif // __QWSUBSYSTEMARRAYPARITY__
void FillHistograms()
Fill the histograms for this subsystem.
void PrintValue() const
Print value of all channels.
virtual ~QwSubsystemArrayParity()
Default destructor.
virtual Bool_t CheckForEndOfBurst() const
Bool_t ApplySingleEventCuts()
Apply the single event cuts.
Int_t fErrorFlagTreeIndex
void DeaccumulateRunningSum(const QwSubsystemArrayParity &value)
Remove the entry value from the running sums for devices.
void WritePromptSummary(QwPromptSummary *ps, TString type)
void Blind(const QwBlinder *blinder)
Blind the asymmetry of this subsystem.
QwSubsystemArrayParity()
Private default constructor.
void Sum(const QwSubsystemArrayParity &value1, const QwSubsystemArrayParity &value2)
Sum of two subsystem arrays.
QwSubsystemArrayParity & operator=(const QwSubsystemArrayParity &value)
Assignment operator.
Class for blinding data, adapted from G0 blinder class.
void AccumulateRunningSum(const QwSubsystemArrayParity &value)
Update the running sums for devices accumulated for the global error non-zero events/patterns.
void ConstructBranchAndVector(TTree *tree, TString &prefix, std::vector< Double_t > &values)
Construct a branch and vector for this subsystem with a prefix.
Virtual base class for the parity subsystems.
void CalculateRunningAverage()
Calculate the average for all good events.
void FillDB_MPS(QwParityDB *db, TString type)
Fill the database with MPS-based variables Note that most subsystems don't need to do this...
void Difference(const QwSubsystemArrayParity &value1, const QwSubsystemArrayParity &value2)
Difference of two subsystem arrays.
QwSubsystemArrayParity & operator-=(const QwSubsystemArrayParity &value)
Subtraction-assignment operator.
Virtual base class for the parity subsystems.
void FillErrDB(QwParityDB *db, TString type)
void Scale(Double_t factor)
Scale this subsystem array.
void PrintErrorCounters() const
Report the number of events failed due to HW and event cut failures.
QwSubsystemArrayParity(QwOptions &options)
Constructor with options.
const QwSubsystemArrayParity * dummy_source
void FillDB(QwParityDB *db, TString type)
Fill the database.
The pure virtual base class of all subsystems.
UInt_t GetEventcutErrorFlag() const
Return the error flag to the main routine.
QwSubsystemArrayParity & operator+=(const QwSubsystemArrayParity &value)
Addition-assignment operator.
void UnBlind(const QwBlinder *blinder)
Unblind the asymmetry of this subsystem.
static Bool_t CanContain(VQwSubsystem *subsys)
Test whether this subsystem array can contain a particular subsystem.
VQwSubsystemParity * GetSubsystemByName(const TString &name)
Get the subsystem with the specified name.
void IncrementErrorCounters()
Update the data elements' error counters based on their internal error flags.
void UnBlind(const QwBlinder *blinder, const QwSubsystemArrayParity &yield)
Unblind the difference of this subsystem.
void UpdateErrorFlag()
Update the error flag internally from all the subsystems.
void AccumulateAllRunningSum(const QwSubsystemArrayParity &value)
Update the running sums for devices check only the error flags at the channel level. Only used for stability checks.
void FillTreeVector(std::vector< Double_t > &values) const
Fill the vector for this subsystem.
void Ratio(const QwSubsystemArrayParity &numer, const QwSubsystemArrayParity &denom)
Ratio of two subsystem arrays.