9 #ifndef __VQWDATAELEMENT__
10 #define __VQWDATAELEMENT__
19 #include "TDirectory.h"
99 virtual Int_t
ProcessEvBuffer(UInt_t* buffer, UInt_t num_words_left, UInt_t subelement=0) = 0;
108 std::cerr <<
"Operation AssignValueFrom not defined!" << std::endl;
113 { std::cerr <<
"Operation += not defined!" << std::endl;
return *
this; }
116 { std::cerr <<
"Operation -= not defined!" << std::endl;
return *
this; }
120 { std::cerr <<
"Sum not defined!" << std::endl; }
123 { std::cerr <<
"Difference not defined!" << std::endl; }
126 { std::cerr <<
"Ratio not defined!" << std::endl; }
140 virtual void SetSingleEventCuts(UInt_t errorflag,Double_t
min, Double_t max, Double_t stability){std::cerr <<
"SetSingleEventCuts not defined!" << std::endl; };
228 #endif // __VQWDATAELEMENT__
virtual UInt_t UpdateErrorFlag()
Update the error flag based on the error flags of internally contained objects Return paramter is the...
virtual Bool_t NeedsExternalClock()
VQwDataElement()
Default constructor.
virtual VQwDataElement & operator+=(const VQwDataElement &value)
Addition-assignment operator.
UInt_t GetGoodEventCount() const
virtual void PrintInfo() const
Print multiple lines of information about this data element.
Bool_t IsNameEmpty() const
Is the name of this element empty?
VQwDataElement(const VQwDataElement &value)
Copy constructor.
virtual void ConstructHistograms(TDirectory *folder, TString &prefix)=0
Construct the histograms for this data element.
virtual void PrintValue() const
Print single line of value and error of this data element.
virtual void Sum(const VQwDataElement &value1, const VQwDataElement &value2)
Sum operator.
virtual void LoadChannelParameters(QwParameterFile ¶mfile)
TString GetModuleType() const
Return the type of the beam instrument.
virtual void Ratio(const VQwDataElement &numer, const VQwDataElement &denom)
Ratio operator.
virtual VQwDataElement & operator=(const VQwDataElement &value)
Arithmetic assignment operator: Should only copy event-based data.
The pure virtual base class of all data elements.
virtual UInt_t GetEventcutErrorFlag()
return the error flag on this channel/device
A logfile class, based on an identical class in the Hermes analyzer.
void SetSubsystemName(TString sysname)
Set the name of the inheriting subsystem name.
TString GetSubsystemName() const
Return the name of the inheriting subsystem name.
void SetElementName(const TString &name)
Set the name of this element.
UInt_t fErrorFlag
This the standard error code generated for the channel that contains the global/local/stability flags...
virtual void SetExternalClockName(const std::string name)
virtual std::string GetExternalClockName()
void SetNumberOfDataWords(const UInt_t &numwords)
Set the number of data words in this data element.
virtual void SetSingleEventCuts(UInt_t errorflag, Double_t min, Double_t max, Double_t stability)
set the upper and lower limits (fULimit and fLLimit), stability % and the error flag on this channel ...
UInt_t fErrorConfigFlag
contains the global/local/stability flags
virtual void SetExternalClockPtr(const VQwHardwareChannel *clock)
UInt_t fNumberOfDataWords
Number of raw data words in this data element.
void SetModuleType(TString ModuleType)
set the type of the beam instrument
virtual void FillHistograms()=0
Fill the histograms for this data element.
static const UInt_t kGlobalCut
Int_t fGoodEventCount
Number of good events accumulated in this element.
TString fElementName
Name of this data element.
virtual void Difference(const VQwDataElement &value1, const VQwDataElement &value2)
Difference operator.
virtual const TString & GetElementName() const
Get the name of this element.
virtual void UpdateErrorFlag(const UInt_t &error)
virtual void SetNeedsExternalClock(Bool_t needed)
virtual void AssignValueFrom(const VQwDataElement *valueptr)
virtual void ClearEventData()
Clear the event data in this element.
virtual Int_t ProcessEvBuffer(UInt_t *buffer, UInt_t num_words_left, UInt_t subelement=0)=0
Process the CODA event buffer for this element.
virtual ~VQwDataElement()
Virtual destructor.
virtual MQwHistograms & operator=(const MQwHistograms &value)
virtual void PrintErrorCounters() const
report number of events failed due to HW and event cut failure
virtual Double_t GetNormClockValue()
size_t GetNumberOfDataWords()
Get the number of data words in this data element.
virtual VQwDataElement & operator-=(const VQwDataElement &value)
Subtraction-assignment operator.