84 Int_t
ProcessEvBuffer(
const UInt_t roc_id,
const UInt_t bank_id, UInt_t* buffer, UInt_t num_words);
105 void Scale(Double_t factor);
162 template <
typename TT>
void AssignGeometry(QwParameterFile *mapstr, VQwBPM *bpm)
std::vector< VQwBPM_ptr > fBPMCombo
void PrintDetectorID() const
void Scale(Double_t factor)
Int_t fQwBeamLineErrorCount
QwBPMCavity * GetBPMCavity(const TString name)
UInt_t GetEventcutErrorFlag()
Return the error flag to the top level routines related to stability checks and ErrorFlag updates...
Bool_t PublishInternalValues() const
Publish all variables of the subsystem.
void Difference(VQwSubsystem *value1, VQwSubsystem *value2)
Bool_t ApplySingleEventCuts()
Apply the single event cuts.
static const Bool_t bDEBUG
QwBeamLine(const QwBeamLine &source)
Copy constructor.
std::vector< QwBPMCavity > fCavity
QwEnergyCalculator * GetEnergyCalculator(const TString name)
UInt_t UpdateErrorFlag()
Uses the error flags of contained data elements to update Returns the error flag to the top level rou...
std::vector< QwEnergyCalculator > fECalculator
void PrintValue() const
Print values of all channels.
Int_t LoadChannelMap(TString mapfile)
Mandatory map file definition.
void CalculateRunningAverage()
Calculate the average for all good events.
void Ratio(VQwSubsystem *numer, VQwSubsystem *denom)
VQwBCM * GetCombinedBCM(const TString name)
Virtual base class for the parity subsystems.
QwBeamLine(const TString &name)
Constructor with name.
Int_t LoadInputParameters(TString pedestalfile)
Mandatory parameter file definition.
const VQwHardwareChannel * GetChannel(EQwBeamInstrumentType TypeID, Int_t index, TString device_prop) const
virtual void ConstructHistograms()
Construct the histograms for this subsystem.
std::vector< VQwClock_ptr > fClock
Int_t ProcessConfigurationBuffer(const UInt_t roc_id, const UInt_t bank_id, UInt_t *buffer, UInt_t num_words)
VQwClock * GetClock(const TString name)
void PrintErrorCounters() const
Report the number of events failed due to HW and event cut failures.
Int_t AddToElementList(std::vector< TT > &elementlist, QwBeamDetectorID &detector_id)
Adds a new element to a vector of data elements, and returns the index of that element within the arr...
std::vector< VQwBCM_ptr > fBCM
std::vector< VQwBPM_ptr > fStripline
void FillDB(QwParityDB *db, TString datatype)
Fill the database.
VQwSubsystem & operator=(VQwSubsystem *value)
Assignment Note: Must be called at the beginning of all subsystems routine call to operator=(VQwSubsy...
The pure virtual base class of all data elements.
Int_t GetDetectorIndex(EQwBeamInstrumentType TypeID, TString name) const
VQwBCM * GetBCM(const TString name)
void EncodeEventData(std::vector< UInt_t > &buffer)
virtual ~QwBeamLine()
Virtual destructor.
std::vector< QwHaloMonitor > fHaloMonitor
void ConstructBranchAndVector(TTree *tree, TString &prefix, std::vector< Double_t > &values)
Construct the branch and tree vector.
void PrintInfo() const
Print some information about the subsystem.
void AccumulateRunningSum(VQwSubsystem *value)
Update the running sums for devices.
void FillErrDB(QwParityDB *db, TString datatype)
QwHaloMonitor * GetScalerChannel(const TString name)
void FillTreeVector(std::vector< Double_t > &values) const
Fill the tree vector.
Int_t LoadEventCuts(TString filename)
Load the event cuts file.
Bool_t PublishByRequest(TString device_name)
Try to publish an internal variable matching the submitted name.
void WritePromptSummary(QwPromptSummary *ps, TString type)
The pure virtual base class of all subsystems.
void IncrementErrorCounters()
Increment the error counters.
QwBeamLine()
Private default constructor (not implemented, will throw linker error on use)
std::vector< VQwBCM_ptr > fBCMCombo
Bool_t Compare(VQwSubsystem *source)
virtual void ConstructBranchAndVector(TTree *tree, TString &prefix, std::vector< Double_t > &values)=0
Construct the branch and tree vector.
std::vector< QwBeamDetectorID > fBeamDetectorID
std::vector< QwLinearDiodeArray > fLinearArray
Int_t ProcessEvBuffer(const UInt_t roc_id, const UInt_t bank_id, UInt_t *buffer, UInt_t num_words)
TODO: The non-event-type-aware ProcessEvBuffer routine should be replaced with the event-type-aware v...
VQwDataElement * GetElement(QwBeamDetectorID det_id)
void RandomizeEventData(int helicity=0, double time=0.0)
void ConstructBranch(TTree *tree, TString &prefix)
Construct the branch and tree vector.
VQwSubsystem & operator-=(VQwSubsystem *value)
void FillHistograms()
Fill the histograms for this subsystem.
void DeaccumulateRunningSum(VQwSubsystem *value)
remove one entry from the running sums for devices
void ProcessOptions(QwOptions &options)
Process the command line options.
void CopyTemplatedDataElements(const VQwSubsystem *source)
VQwSubsystem & operator+=(VQwSubsystem *value)
std::vector< QwQPD > fQPD
VQwBPM * GetBPMStripline(const TString name)
VQwBPM * GetCombinedBPM(const TString name)
void Sum(VQwSubsystem *value1, VQwSubsystem *value2)
Int_t LoadGeometryDefinition(TString mapfile)
Optional geometry definition.