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

Abstract base class for subsystems participating in parity analysis. More...

#include <VQwSubsystemParity.h>

+ Inheritance diagram for VQwSubsystemParity:
+ Collaboration diagram for VQwSubsystemParity:

Public Member Functions

 VQwSubsystemParity (const TString &name)
 Constructor with name.
 
 VQwSubsystemParity (const VQwSubsystemParity &source)
 Copy constructor.
 
 ~VQwSubsystemParity () override
 Default destructor.
 
virtual void FillDB_MPS (QwParityDB *, TString)
 Fill the database with MPS-based variables Note that most subsystems don't need to do this.
 
virtual void FillDB (QwParityDB *, TString)
 Fill the database.
 
virtual void FillErrDB (QwParityDB *, TString)
 
VQwSubsystemoperator= (VQwSubsystem *value) override=0
 Assignment Note: Must be called at the beginning of all subsystems routine call to operator=(VQwSubsystem *value) by VQwSubsystem::operator=(value)
 
virtual VQwSubsystemoperator+= (VQwSubsystem *value)=0
 
virtual VQwSubsystemoperator-= (VQwSubsystem *value)=0
 
virtual void Sum (VQwSubsystem *value1, VQwSubsystem *value2)
 
virtual void Difference (VQwSubsystem *value1, VQwSubsystem *value2)
 
virtual void Ratio (VQwSubsystem *numer, VQwSubsystem *denom)=0
 
virtual void Scale (Double_t factor)=0
 
virtual void AccumulateRunningSum (VQwSubsystem *value, Int_t count=0, Int_t ErrorMask=0xFFFFFFF)=0
 Update the running sums for devices.
 
virtual void DeaccumulateRunningSum (VQwSubsystem *value, Int_t ErrorMask=0xFFFFFFF)=0
 remove one entry from the running sums for devices
 
virtual void CalculateRunningAverage ()=0
 Calculate the average for all good events.
 
Int_t LoadEventCuts (TString filename) override
 Load the event cuts file.
 
virtual void LoadEventCuts_Init ()
 
virtual void LoadEventCuts_Line (QwParameterFile &, TString &, Int_t &)
 
virtual void LoadEventCuts_Fin (Int_t &)
 
virtual Bool_t ApplySingleEventCuts ()=0
 Apply the single event cuts.
 
virtual Bool_t CheckForBurpFail (const VQwSubsystem *subsys)=0
 Report the number of events failed due to HW and event cut failures.
 
virtual void PrintErrorCounters () const =0
 
virtual void IncrementErrorCounters ()=0
 Increment the error counters.
 
virtual UInt_t GetEventcutErrorFlag ()=0
 Return the error flag to the top level routines related to stability checks and ErrorFlag updates.
 
virtual UInt_t UpdateErrorFlag ()
 Uses the error flags of contained data elements to update Returns the error flag to the top level routines related to stability checks and ErrorFlag updates.
 
virtual void UpdateErrorFlag (const VQwSubsystem *ev_error)=0
 update the error flag in the subsystem level from the top level routines related to stability checks. This will uniquely update the errorflag at each channel based on the error flag in the corresponding channel in the ev_error subsystem
 
virtual void Blind (const QwBlinder *)
 Blind the asymmetry of this subsystem.
 
virtual void Blind (const QwBlinder *, const VQwSubsystemParity *)
 Blind the difference of this subsystem.
 
virtual void PrintValue () const
 Print values of all channels.
 
virtual void WritePromptSummary (QwPromptSummary *, TString)
 
virtual Bool_t CheckForEndOfBurst () const
 
virtual void LoadMockDataParameters (TString)
 
- Public Member Functions inherited from VQwSubsystem
 VQwSubsystem (const TString &name)
 Constructor with name.
 
 VQwSubsystem (const VQwSubsystem &orig)
 Copy constructor by object.
 
 ~VQwSubsystem () override
 Default destructor.
 
virtual void ProcessOptions (QwOptions &)
 Process the command line options.
 
TString GetName () const
 
Bool_t HasDataLoaded () const
 
VQwSubsystemGetSibling (const std::string &name) const
 Get the sibling with specified name.
 
virtual std::vector< TString > GetParamFileNameList ()
 
virtual std::map< TString, TString > GetDetectorMaps ()
 
Bool_t PublishByRequest (TString) override
 Try to publish an internal variable matching the submitted name.
 
Bool_t PublishInternalValues () const override
 Publish all variables of the subsystem.
 
virtual Int_t LoadDetectorMaps (QwParameterFile &file)
 Parse parameter file to find the map files.
 
virtual Int_t LoadChannelMap (TString mapfile)=0
 Mandatory map file definition.
 
virtual Int_t LoadInputParameters (TString mapfile)=0
 Mandatory parameter file definition.
 
virtual Int_t LoadGeometryDefinition (TString)
 Optional geometry definition.
 
virtual Int_t LoadCrosstalkDefinition (TString)
 Optional crosstalk definition.
 
void SetEventTypeMask (const UInt_t mask)
 Set event type mask.
 
UInt_t GetEventTypeMask () const
 Get event type mask.
 
virtual void ClearEventData ()=0
 
virtual Int_t ProcessConfigurationBuffer (const ROCID_t roc_id, const BankID_t bank_id, UInt_t *buffer, UInt_t num_words)=0
 
virtual Int_t ProcessEvBuffer (const UInt_t event_type, const ROCID_t roc_id, const BankID_t bank_id, UInt_t *buffer, UInt_t num_words)
 
virtual Int_t ProcessEvBuffer (const ROCID_t roc_id, const BankID_t bank_id, UInt_t *buffer, UInt_t num_words)=0
 TODO: The non-event-type-aware ProcessEvBuffer routine should be replaced with the event-type-aware version.
 
virtual void ProcessEvent ()=0
 
virtual void ExchangeProcessedData ()
 Request processed data from other subsystems for internal use in the second event processing stage. Not all derived classes will require data from other subsystems.
 
virtual void ProcessEvent_2 ()
 Process the event data again, including data from other subsystems. Not all derived classes will require a second stage of event data processing.
 
virtual void AtEndOfEventLoop ()
 Perform actions at the end of the event loop.
 
virtual void RandomizeEventData (int=0, double=0.0)
 
virtual void EncodeEventData (std::vector< UInt_t > &)
 
virtual void ConstructObjects ()
 Construct the objects for this subsystem.
 
virtual void ConstructObjects (TDirectory *folder)
 Construct the objects for this subsystem in a folder.
 
virtual void ConstructObjects (TString &prefix)
 Construct the objects for this subsystem with a prefix.
 
virtual void ConstructObjects (TDirectory *, TString &)
 Construct the objects for this subsystem in a folder with a prefix.
 
virtual void ConstructHistograms ()
 Construct the histograms for this subsystem.
 
virtual void ConstructHistograms (TDirectory *folder)
 Construct the histograms for this subsystem in a folder.
 
virtual void ConstructHistograms (TString &prefix)
 Construct the histograms for this subsystem with a prefix.
 
virtual void ConstructHistograms (TDirectory *folder, TString &prefix)=0
 Construct the histograms for this subsystem in a folder with a prefix.
 
virtual void FillHistograms ()=0
 Fill the histograms for this subsystem.
 
virtual void ConstructBranchAndVector (TTree *tree, TString &prefix, QwRootTreeBranchVector &values)=0
 Construct the branch and tree vector.
 
virtual void ConstructBranchAndVector (TTree *tree, QwRootTreeBranchVector &values)
 Construct the branch and tree vector.
 
virtual void ConstructBranch (TTree *tree, TString &prefix)=0
 Construct the branch and tree vector.
 
virtual void ConstructBranch (TTree *tree, TString &prefix, QwParameterFile &trim_file)=0
 Construct the branch and tree vector based on the trim file.
 
virtual void FillTreeVector (QwRootTreeBranchVector &values) const =0
 Fill the tree vector.
 
virtual void ConstructTree ()
 Construct the tree for this subsystem.
 
virtual void ConstructTree (TDirectory *folder)
 Construct the tree for this subsystem in a folder.
 
virtual void ConstructTree (TString &prefix)
 Construct the tree for this subsystem with a prefix.
 
virtual void ConstructTree (TDirectory *, TString &)
 Construct the tree for this subsystem in a folder with a prefix.
 
virtual void FillTree ()
 Fill the tree for this subsystem.
 
virtual void DeleteTree ()
 Delete the tree for this subsystem.
 
virtual void PrintInfo () const
 Print some information about the subsystem.
 
virtual void PrintDetectorMaps (Bool_t status) const
 
void GetMarkerWordList (const ROCID_t roc_id, const BankID_t bank_id, std::vector< UInt_t > &marker) const
 
std::vector< ROCID_tGetROCIds () const
 
- Public Member Functions inherited from MQwHistograms
void ShareHistograms (const MQwHistograms *source)
 Share histogram pointers between objects.
 
- Public Member Functions inherited from MQwPublishable_child< QwSubsystemArray, VQwSubsystem >
 MQwPublishable_child ()
 Default constructor Initializes the child object and sets up self-reference for publishing.
 
 MQwPublishable_child (const MQwPublishable_child &source)
 Copy constructor.
 
virtual ~MQwPublishable_child ()
 Virtual destructor.
 
void SetParent (QwSubsystemArray *parent)
 Set the parent container for this child object.
 
QwSubsystemArrayGetParent () const
 Get the parent container for this child object.
 

Private Member Functions

 VQwSubsystemParity ()
 Private default constructor (not implemented, will throw linker error on use)
 

Additional Inherited Members

- Static Public Member Functions inherited from VQwSubsystem
static void DefineOptions ()
 Define options function (note: no virtual static functions in C++)
 
void ClearAllBankRegistrations ()
 Clear all registration of ROC and Bank IDs for this subsystem.
 
virtual Int_t RegisterROCNumber (const ROCID_t roc_id, const BankID_t bank_id=0)
 Tell the object that it will decode data from this ROC and sub-bank.
 
Int_t RegisterSubbank (const BankID_t bank_id)
 Tell the object that it will decode data from this sub-bank in the ROC currently open for registration.
 
Int_t RegisterMarkerWord (const UInt_t markerword)
 
void RegisterRocBankMarker (QwParameterFile &mapstr)
 
Int_t GetSubbankIndex () const
 
Int_t GetSubbankIndex (const ROCID_t roc_id, const BankID_t bank_id) const
 
void SetDataLoaded (Bool_t flag)
 
template<class T>
Int_t FindIndex (const std::vector< T > &myvec, const T value) const
 
Bool_t Compare (VQwSubsystem *source)
 
- 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 Member Functions inherited from MQwPublishable_child< QwSubsystemArray, VQwSubsystem >
Bool_t RequestExternalValue (const TString &name, VQwHardwareChannel *value) const
 Retrieve the variable name from other subsystem arrays Get the value corresponding to some variable name from a different data array.
 
const VQwHardwareChannelRequestExternalPointer (const TString &name) const
 Retrieve a pointer to an external variable by name Requests a direct pointer to a variable from sibling subsystems via the parent container.
 
Bool_t PublishInternalValue (const TString name, const TString desc, const VQwHardwareChannel *element) const
 Publish a variable from this child into the parent container.
 
- Protected Attributes inherited from VQwSubsystem
std::vector< std::vector< TString > > fPublishList
 
TString fSystemName
 Name of this subsystem.
 
UInt_t fEventTypeMask
 Mask of event types.
 
Bool_t fIsDataLoaded
 Has this subsystem gotten data to be processed?
 
std::vector< TString > fDetectorMapsNames
 Names of loaded detector map files.
 
std::map< TString, TString > fDetectorMaps
 Map of file name to full path or content.
 
ROCID_t fCurrentROC_ID
 ROC ID that is currently being processed.
 
BankID_t fCurrentBank_ID
 Bank ID (and Marker word) that is currently being processed;.
 
std::vector< ROCID_tfROC_IDs
 Vector of ROC IDs associated with this subsystem.
 
std::vector< std::vector< BankID_t > > fBank_IDs
 Vector of Bank IDs per ROC ID associated with this subsystem.
 
std::vector< std::vector< std::vector< UInt_t > > > fMarkerWords
 Vector of marker words per ROC & subbank associated with this subsystem.
 
- Protected Attributes inherited from MQwHistograms
std::vector< TH1_ptrfHistograms
 Histograms associated with this data element.
 

Detailed Description

Abstract base class for subsystems participating in parity analysis.

Extends VQwSubsystem with parity-specific capabilities including asymmetry formation, blinding support, database output, running sum accumulation, and event cuts. Provides the contract for subsystems that contribute to parity violation measurements and helicity-based analyses.

Definition at line 33 of file VQwSubsystemParity.h.

Constructor & Destructor Documentation

◆ VQwSubsystemParity() [1/3]

◆ VQwSubsystemParity() [2/3]

VQwSubsystemParity::VQwSubsystemParity ( const TString & name)
inline

Constructor with name.

Definition at line 41 of file VQwSubsystemParity.h.

41 : VQwSubsystem(name) {
42 SetEventTypeMask(0x1); // only accept 0x1
43 };
void SetEventTypeMask(const UInt_t mask)
Set event type mask.

References VQwSubsystem::SetEventTypeMask(), and VQwSubsystem::VQwSubsystem().

+ Here is the call graph for this function:

◆ VQwSubsystemParity() [3/3]

VQwSubsystemParity::VQwSubsystemParity ( const VQwSubsystemParity & source)
inline

Copy constructor.

Definition at line 45 of file VQwSubsystemParity.h.

46 : VQwSubsystem(source)
47 { }

References VQwSubsystem::VQwSubsystem(), and VQwSubsystemParity().

+ Here is the call graph for this function:

◆ ~VQwSubsystemParity()

VQwSubsystemParity::~VQwSubsystemParity ( )
inlineoverride

Default destructor.

Definition at line 49 of file VQwSubsystemParity.h.

49{ };

Member Function Documentation

◆ AccumulateRunningSum()

virtual void VQwSubsystemParity::AccumulateRunningSum ( VQwSubsystem * value,
Int_t count = 0,
Int_t ErrorMask = 0xFFFFFFF )
pure virtual

Update the running sums for devices.

Implemented in QwBeamLine, QwBeamMod, QwCombinerSubsystem, QwHelicity, QwIntegratedRaster, QwMollerDetector, QwScaler, and VQwDetectorArray.

References VQwSubsystem::VQwSubsystem().

Referenced by QwSubsystemArrayParity::AccumulateAllRunningSum(), and QwSubsystemArrayParity::AccumulateRunningSum().

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

◆ ApplySingleEventCuts()

virtual Bool_t VQwSubsystemParity::ApplySingleEventCuts ( )
pure virtual

Apply the single event cuts.

Implemented in QwBeamLine, QwBeamMod, QwCombinerSubsystem, QwHelicity, QwIntegratedRaster, QwMollerDetector, QwScaler, and VQwDetectorArray.

Referenced by QwSubsystemArrayParity::ApplySingleEventCuts().

+ Here is the caller graph for this function:

◆ Blind() [1/2]

virtual void VQwSubsystemParity::Blind ( const QwBlinder * )
inlinevirtual

Blind the asymmetry of this subsystem.

Reimplemented in QwBlindDetectorArray.

Definition at line 140 of file VQwSubsystemParity.h.

140{ return; };

Referenced by QwSubsystemArrayParity::Blind(), and QwSubsystemArrayParity::Blind().

+ Here is the caller graph for this function:

◆ Blind() [2/2]

virtual void VQwSubsystemParity::Blind ( const QwBlinder * ,
const VQwSubsystemParity *  )
inlinevirtual

Blind the difference of this subsystem.

Reimplemented in QwBlindDetectorArray.

Definition at line 142 of file VQwSubsystemParity.h.

142{ return; };

References VQwSubsystemParity().

+ Here is the call graph for this function:

◆ CalculateRunningAverage()

virtual void VQwSubsystemParity::CalculateRunningAverage ( )
pure virtual

Calculate the average for all good events.

Implemented in QwBeamLine, QwBeamMod, QwCombinerSubsystem, QwHelicity, QwIntegratedRaster, QwMollerDetector, QwScaler, and VQwDetectorArray.

Referenced by QwSubsystemArrayParity::CalculateRunningAverage().

+ Here is the caller graph for this function:

◆ CheckForBurpFail()

virtual Bool_t VQwSubsystemParity::CheckForBurpFail ( const VQwSubsystem * subsys)
pure virtual

Report the number of events failed due to HW and event cut failures.

Implemented in QwBeamLine, QwBeamMod, QwCombinerSubsystem, QwFakeHelicity, QwHelicity, QwIntegratedRaster, QwMollerDetector, QwScaler, and VQwDetectorArray.

References VQwSubsystem::VQwSubsystem().

Referenced by QwSubsystemArrayParity::CheckForBurpFail().

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

◆ CheckForEndOfBurst()

virtual Bool_t VQwSubsystemParity::CheckForEndOfBurst ( ) const
inlinevirtual

Definition at line 150 of file VQwSubsystemParity.h.

150{return kFALSE;};

Referenced by QwSubsystemArrayParity::CheckForEndOfBurst().

+ Here is the caller graph for this function:

◆ DeaccumulateRunningSum()

virtual void VQwSubsystemParity::DeaccumulateRunningSum ( VQwSubsystem * value,
Int_t ErrorMask = 0xFFFFFFF )
pure virtual

remove one entry from the running sums for devices

Implemented in QwBeamLine, QwBeamMod, QwCombinerSubsystem, QwHelicity, QwIntegratedRaster, QwMollerDetector, QwScaler, and VQwDetectorArray.

References VQwSubsystem::VQwSubsystem().

Referenced by QwSubsystemArrayParity::DeaccumulateRunningSum().

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

◆ Difference()

virtual void VQwSubsystemParity::Difference ( VQwSubsystem * value1,
VQwSubsystem * value2 )
inlinevirtual

Reimplemented in QwIntegratedRaster.

Definition at line 69 of file VQwSubsystemParity.h.

70 {
71 if(Compare(value1)&&Compare(value2)){
72 *this = value1;
73 *this -= value2;
74 }
75 };
Bool_t Compare(VQwSubsystem *source)

References VQwSubsystem::Compare(), and VQwSubsystem::VQwSubsystem().

+ Here is the call graph for this function:

◆ FillDB()

virtual void VQwSubsystemParity::FillDB ( QwParityDB * ,
TString  )
inlinevirtual

Fill the database.

Definition at line 55 of file VQwSubsystemParity.h.

55{ };

Referenced by QwSubsystemArrayParity::FillDB().

+ Here is the caller graph for this function:

◆ FillDB_MPS()

virtual void VQwSubsystemParity::FillDB_MPS ( QwParityDB * ,
TString  )
inlinevirtual

Fill the database with MPS-based variables Note that most subsystems don't need to do this.

Definition at line 53 of file VQwSubsystemParity.h.

53{};

Referenced by QwSubsystemArrayParity::FillDB_MPS().

+ Here is the caller graph for this function:

◆ FillErrDB()

virtual void VQwSubsystemParity::FillErrDB ( QwParityDB * ,
TString  )
inlinevirtual

Definition at line 56 of file VQwSubsystemParity.h.

56{ };

Referenced by QwSubsystemArrayParity::FillErrDB().

+ Here is the caller graph for this function:

◆ GetEventcutErrorFlag()

virtual UInt_t VQwSubsystemParity::GetEventcutErrorFlag ( )
pure virtual

Return the error flag to the top level routines related to stability checks and ErrorFlag updates.

Implemented in QwBeamLine, QwBeamMod, QwCombinerSubsystem, QwHelicity, QwIntegratedRaster, QwMollerDetector, QwScaler, and VQwDetectorArray.

Referenced by QwSubsystemArrayParity::ApplySingleEventCuts(), and UpdateErrorFlag().

+ Here is the caller graph for this function:

◆ IncrementErrorCounters()

virtual void VQwSubsystemParity::IncrementErrorCounters ( )
pure virtual

Increment the error counters.

Implemented in QwBeamLine, QwBeamMod, QwCombinerSubsystem, QwHelicity, QwIntegratedRaster, QwMollerDetector, QwScaler, and VQwDetectorArray.

Referenced by QwSubsystemArrayParity::IncrementErrorCounters().

+ Here is the caller graph for this function:

◆ LoadEventCuts()

Int_t VQwSubsystemParity::LoadEventCuts ( TString filename)
inlineoverridevirtual

Load the event cuts file.

Reimplemented from VQwSubsystem.

Definition at line 88 of file VQwSubsystemParity.h.

88 {
89 Int_t eventcut_flag = 1;
90
91 // Open the file
92 QwParameterFile mapstr(filename.Data());
93 fDetectorMaps.insert(mapstr.GetParamFileNameContents());
94 this->LoadEventCuts_Init();
95
96 while (mapstr.ReadNextLine()){
97 mapstr.TrimComment('!'); // Remove everything after a '!' character.
98 mapstr.TrimWhitespace(); // Get rid of leading and trailing spaces.
99 if (mapstr.LineIsEmpty())
100 continue;
101 TString varname, varvalue;
102 if (mapstr.HasVariablePair("=",varname,varvalue)){
103 if (varname == "EVENTCUTS"){
104 eventcut_flag = QwParameterFile::GetUInt(varvalue);
105 }
106 } else {
107 this->LoadEventCuts_Line(mapstr, varvalue, eventcut_flag);
108 }
109 }
110
111 this->LoadEventCuts_Fin(eventcut_flag);
112 mapstr.Close();
113 return 0;
114 };
static UInt_t GetUInt(const TString &varvalue)
std::map< TString, TString > fDetectorMaps
Map of file name to full path or content.
virtual void LoadEventCuts_Init()
virtual void LoadEventCuts_Fin(Int_t &)
virtual void LoadEventCuts_Line(QwParameterFile &, TString &, Int_t &)

References QwParameterFile::Close(), VQwSubsystem::fDetectorMaps, QwParameterFile::GetParamFileNameContents(), QwParameterFile::GetUInt(), QwParameterFile::HasVariablePair(), QwParameterFile::LineIsEmpty(), LoadEventCuts_Fin(), LoadEventCuts_Init(), LoadEventCuts_Line(), QwParameterFile::ReadNextLine(), QwParameterFile::TrimComment(), and QwParameterFile::TrimWhitespace().

+ Here is the call graph for this function:

◆ LoadEventCuts_Fin()

virtual void VQwSubsystemParity::LoadEventCuts_Fin ( Int_t & )
inlinevirtual

Reimplemented in QwBeamLine, QwBeamMod, and VQwDetectorArray.

Definition at line 117 of file VQwSubsystemParity.h.

117{};

Referenced by LoadEventCuts().

+ Here is the caller graph for this function:

◆ LoadEventCuts_Init()

virtual void VQwSubsystemParity::LoadEventCuts_Init ( )
inlinevirtual

Reimplemented in QwBeamLine, QwBeamMod, and VQwDetectorArray.

Definition at line 115 of file VQwSubsystemParity.h.

115{};

Referenced by LoadEventCuts().

+ Here is the caller graph for this function:

◆ LoadEventCuts_Line()

virtual void VQwSubsystemParity::LoadEventCuts_Line ( QwParameterFile & ,
TString & ,
Int_t &  )
inlinevirtual

Reimplemented in QwBeamLine, QwBeamMod, and VQwDetectorArray.

Definition at line 116 of file VQwSubsystemParity.h.

116{};

Referenced by LoadEventCuts().

+ Here is the caller graph for this function:

◆ LoadMockDataParameters()

virtual void VQwSubsystemParity::LoadMockDataParameters ( TString )
inlinevirtual

Reimplemented in QwBeamLine, and VQwDetectorArray.

Definition at line 152 of file VQwSubsystemParity.h.

152{};

Referenced by QwSubsystemArrayParity::LoadMockDataParameters().

+ Here is the caller graph for this function:

◆ operator+=()

virtual VQwSubsystem & VQwSubsystemParity::operator+= ( VQwSubsystem * value)
pure virtual

Implemented in QwBeamLine, QwBeamMod, QwCombinerSubsystem, QwHelicity, QwIntegratedRaster, QwMollerDetector, QwScaler, and VQwDetectorArray.

References VQwSubsystem::VQwSubsystem().

+ Here is the call graph for this function:

◆ operator-=()

virtual VQwSubsystem & VQwSubsystemParity::operator-= ( VQwSubsystem * value)
pure virtual

Implemented in QwBeamLine, QwBeamMod, QwCombinerSubsystem, QwHelicity, QwIntegratedRaster, QwMollerDetector, QwScaler, and VQwDetectorArray.

References VQwSubsystem::VQwSubsystem().

+ Here is the call graph for this function:

◆ operator=()

VQwSubsystem & VQwSubsystemParity::operator= ( VQwSubsystem * value)
overridepure virtual

Assignment Note: Must be called at the beginning of all subsystems routine call to operator=(VQwSubsystem *value) by VQwSubsystem::operator=(value)

Reimplemented from VQwSubsystem.

Implemented in QwBeamLine, QwBeamMod, QwCombinerSubsystem, QwHelicity, QwIntegratedRaster, QwMollerDetector, QwScaler, and VQwDetectorArray.

References VQwSubsystem::VQwSubsystem().

+ Here is the call graph for this function:

◆ PrintErrorCounters()

virtual void VQwSubsystemParity::PrintErrorCounters ( ) const
pure virtual

Implemented in QwBeamLine, QwBeamMod, QwCombinerSubsystem, QwHelicity, QwIntegratedRaster, QwMollerDetector, QwScaler, and VQwDetectorArray.

Referenced by QwSubsystemArrayParity::PrintErrorCounters().

+ Here is the caller graph for this function:

◆ PrintValue()

virtual void VQwSubsystemParity::PrintValue ( ) const
inlinevirtual

Print values of all channels.

Reimplemented in QwBeamLine, QwCombinerSubsystem, QwIntegratedRaster, QwMollerDetector, QwScaler, and VQwDetectorArray.

Definition at line 145 of file VQwSubsystemParity.h.

145{ };

Referenced by QwBeamMod::Print(), and QwSubsystemArrayParity::PrintValue().

+ Here is the caller graph for this function:

◆ Ratio()

virtual void VQwSubsystemParity::Ratio ( VQwSubsystem * numer,
VQwSubsystem * denom )
pure virtual

Implemented in QwBeamLine, QwBeamMod, QwCombinerSubsystem, QwHelicity, QwIntegratedRaster, QwMollerDetector, QwScaler, and VQwDetectorArray.

References VQwSubsystem::VQwSubsystem().

Referenced by QwSubsystemArrayParity::Ratio().

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

◆ Scale()

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

Implemented in QwBeamLine, QwBeamMod, QwCombinerSubsystem, QwHelicity, QwIntegratedRaster, QwMollerDetector, QwScaler, and VQwDetectorArray.

Referenced by QwSubsystemArrayParity::Scale().

+ Here is the caller graph for this function:

◆ Sum()

virtual void VQwSubsystemParity::Sum ( VQwSubsystem * value1,
VQwSubsystem * value2 )
inlinevirtual

Reimplemented in QwIntegratedRaster.

Definition at line 62 of file VQwSubsystemParity.h.

63 {
64 if(Compare(value1)&&Compare(value2)){
65 *this = value1;
66 *this += value2;
67 }
68 };

References VQwSubsystem::Compare(), and VQwSubsystem::VQwSubsystem().

+ Here is the call graph for this function:

◆ UpdateErrorFlag() [1/2]

virtual UInt_t VQwSubsystemParity::UpdateErrorFlag ( )
inlinevirtual

Uses the error flags of contained data elements to update Returns the error flag to the top level routines related to stability checks and ErrorFlag updates.

Reimplemented in QwBeamLine.

Definition at line 133 of file VQwSubsystemParity.h.

133{return GetEventcutErrorFlag();};
virtual UInt_t GetEventcutErrorFlag()=0
Return the error flag to the top level routines related to stability checks and ErrorFlag updates.

References GetEventcutErrorFlag().

Referenced by QwSubsystemArrayParity::UpdateErrorFlag(), QwSubsystemArrayParity::UpdateErrorFlag(), and VQwDetectorArray::UpdateErrorFlag().

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

◆ UpdateErrorFlag() [2/2]

virtual void VQwSubsystemParity::UpdateErrorFlag ( const VQwSubsystem * ev_error)
pure virtual

update the error flag in the subsystem level from the top level routines related to stability checks. This will uniquely update the errorflag at each channel based on the error flag in the corresponding channel in the ev_error subsystem

Implemented in QwBeamLine, QwBeamMod, QwCombinerSubsystem, QwHelicity, QwIntegratedRaster, QwMollerDetector, QwScaler, and VQwDetectorArray.

References VQwSubsystem::VQwSubsystem().

+ Here is the call graph for this function:

◆ WritePromptSummary()

virtual void VQwSubsystemParity::WritePromptSummary ( QwPromptSummary * ,
TString  )
inlinevirtual

Reimplemented in QwBeamLine, QwBeamMod, QwIntegratedRaster, and VQwDetectorArray.

Definition at line 147 of file VQwSubsystemParity.h.

147{};

Referenced by QwSubsystemArrayParity::WritePromptSummary().

+ Here is the caller graph for this function:

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