|
JAPAn
Just Another Parity Analyzer
|
Data handler that forms linear combinations of channels. More...
#include <QwCombiner.h>
Inheritance diagram for QwCombiner:
Collaboration diagram for QwCombiner:Public Types | |
| typedef std::vector< VQwHardwareChannel * >::iterator | Iterator_HdwChan |
| typedef std::vector< VQwHardwareChannel * >::const_iterator | ConstIterator_HdwChan |
Public Types inherited from VQwDataHandler | |
| enum | EQwHandleType { kHandleTypeUnknown =0 , kHandleTypeMps , kHandleTypeAsym , kHandleTypeDiff , kHandleTypeYield } |
| typedef std::vector< VQwHardwareChannel * >::iterator | Iterator_HdwChan |
| typedef std::vector< VQwHardwareChannel * >::const_iterator | ConstIterator_HdwChan |
Public Member Functions | |
| QwCombiner (const TString &name) | |
| Constructor with name. | |
| QwCombiner (const QwCombiner &source) | |
| Copy constructor. | |
| ~QwCombiner () override | |
| Virtual destructor. | |
| Int_t | LoadChannelMap (const std::string &mapfile) override |
| Load the channels and sensitivities. | |
| Int_t | ConnectChannels (QwSubsystemArrayParity &event) override |
| Connect to Channels (event only) | |
| Int_t | ConnectChannels (QwSubsystemArrayParity &asym, QwSubsystemArrayParity &diff) override |
| Connect to Channels (asymmetry/difference only) | |
| void | ProcessData () override |
Public Member Functions inherited from VQwDataHandler | |
| VQwDataHandler (const TString &name) | |
| VQwDataHandler (const VQwDataHandler &source) | |
| virtual void | ParseConfigFile (QwParameterFile &file) |
| void | SetPointer (QwHelicityPattern *ptr) |
| void | SetPointer (QwSubsystemArrayParity *ptr) |
| virtual Int_t | ConnectChannels (QwSubsystemArrayParity &, QwSubsystemArrayParity &asym, QwSubsystemArrayParity &diff) |
| Int_t | ConnectChannels (QwHelicityPattern &helicitypattern) |
| virtual void | UpdateBurstCounter (Short_t burstcounter) |
| virtual void | FinishDataHandler () |
| ~VQwDataHandler () override | |
| TString | GetName () |
| virtual void | ClearEventData () |
| void | InitRunningSum () |
| void | AccumulateRunningSum () |
| virtual void | AccumulateRunningSum (VQwDataHandler &value, Int_t count=0, Int_t ErrorMask=0xFFFFFFF) |
| void | CalculateRunningAverage () |
| void | PrintValue () const |
| void | WritePromptSummary (QwPromptSummary *ps, TString type) |
| virtual void | ConstructTreeBranches (QwRootFile *treerootfile, const std::string &treeprefix="", const std::string &branchprefix="") |
| virtual void | FillTreeBranches (QwRootFile *treerootfile) |
| virtual void | ConstructNTupleFields (QwRootFile *treerootfile, const std::string &treeprefix="", const std::string &branchprefix="") |
| RNTuple methods. | |
| virtual void | FillNTupleFields (QwRootFile *treerootfile) |
| virtual void | ConstructHistograms (TDirectory *, TString &) |
| Construct the histograms in a folder with a prefix. | |
| virtual void | FillHistograms () |
| Fill the histograms. | |
| void | FillTreeVector (QwRootTreeBranchVector &values) const |
| void | ConstructBranchAndVector (TTree *tree, TString &prefix, QwRootTreeBranchVector &values) |
| void | SetRunLabel (TString x) |
| Int_t | LoadChannelMap () |
| Bool_t | PublishInternalValues () const override |
| Publish all variables of the subsystem. | |
| Bool_t | PublishByRequest (TString device_name) override |
| Try to publish an internal variable matching the submitted name. | |
Public Member Functions inherited from MQwPublishable_child< QwDataHandlerArray, VQwDataHandler > | |
| 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 (QwDataHandlerArray *parent) |
| Set the parent container for this child object. | |
| QwDataHandlerArray * | GetParent () const |
| Get the parent container for this child object. | |
Public Member Functions inherited from MQwCloneable< VQwDataHandler, QwCombiner > | |
| ~MQwCloneable () override | |
| Virtual destructor. | |
| VQwDataHandler * | Clone () const override |
| Concrete clone method. | |
| const VQwFactory< VQwDataHandler > * | Factory () const override |
| Factory getter. | |
Public Member Functions inherited from VQwCloneable< VQwDataHandler > | |
| virtual | ~VQwCloneable () |
| Virtual destructor. | |
| std::string | GetClassName () const |
| Get demangled name of this class. | |
Protected Member Functions | |
| QwCombiner () | |
| Default constructor (Protected for child class access) | |
Protected Member Functions inherited from VQwDataHandler | |
| VQwDataHandler () | |
| void | SetEventcutErrorFlagPointer (const UInt_t *errorflagptr) |
| UInt_t | GetEventcutErrorFlag () const |
| std::pair< EQwHandleType, std::string > | ParseHandledVariable (const std::string &variable) |
| void | CalcOneOutput (const VQwHardwareChannel *dv, VQwHardwareChannel *output, std::vector< const VQwHardwareChannel * > &ivs, std::vector< Double_t > &sens) |
Protected Member Functions inherited from MQwPublishable_child< QwDataHandlerArray, VQwDataHandler > | |
| 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 VQwHardwareChannel * | RequestExternalPointer (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 | |
| UInt_t | fErrorFlagMask |
| Error flag mask. | |
| const UInt_t * | fErrorFlagPointer |
| std::vector< std::vector< EQwHandleType > > | fIndependentType |
| List of channels to use in the combiner. | |
| std::vector< std::vector< std::string > > | fIndependentName |
| std::vector< std::vector< const VQwHardwareChannel * > > | fIndependentVar |
| std::vector< std::vector< Double_t > > | fSensitivity |
Protected Attributes inherited from VQwDataHandler | |
| Int_t | fPriority |
| Short_t | fBurstCounter |
| When a datahandler array is processed, handlers with lower priority will be processed before handlers with higher priority. | |
| TString | fName |
| std::string | fMapFile |
| std::string | fTreeName |
| std::string | fTreeComment |
| std::string | fPrefix |
| TString | run_label |
| const UInt_t * | fErrorFlagPtr |
| Error flag pointer. | |
| QwSubsystemArrayParity * | fSubsystemArray |
| Single event pointer. | |
| QwHelicityPattern * | fHelicityPattern |
| Helicity pattern pointer. | |
| std::vector< std::string > | fDependentFull |
| std::vector< EQwHandleType > | fDependentType |
| std::vector< std::string > | fDependentName |
| std::vector< const VQwHardwareChannel * > | fDependentVar |
| std::vector< Double_t > | fDependentValues |
| std::vector< VQwHardwareChannel * > | fOutputVar |
| std::vector< Double_t > | fOutputValues |
| std::vector< std::vector< TString > > | fPublishList |
| std::string | ParseSeparator |
| Bool_t | fKeepRunningSum |
| Bool_t | fRunningsumFillsTree |
| VQwDataHandler * | fRunningsum |
Additional Inherited Members | |
Static Public Member Functions inherited from MQwCloneable< VQwDataHandler, QwCombiner > | |
| static VQwDataHandler * | Create (const std::string &name) |
| Object creation. | |
| static QwCombiner * | Cast (QwCombiner *type) |
| Object dynamic cast. | |
Data handler that forms linear combinations of channels.
QwCombiner connects to one or more input variables (yields/asymmetries/ differences) and computes configured linear combinations using provided sensitivities. It is typically used to derive composite diagnostics or to prepare inputs for higher-level analyses.
Definition at line 23 of file QwCombiner.h.
| typedef std::vector<VQwHardwareChannel*>::const_iterator QwCombiner::ConstIterator_HdwChan |
Definition at line 27 of file QwCombiner.h.
| typedef std::vector<VQwHardwareChannel*>::iterator QwCombiner::Iterator_HdwChan |
Definition at line 26 of file QwCombiner.h.
| QwCombiner::QwCombiner | ( | const TString & | name | ) |
Constructor with name.
Definition at line 25 of file QwCombiner.cc.
References fErrorFlagMask, fErrorFlagPointer, VQwDataHandler::fKeepRunningSum, VQwDataHandler::ParseSeparator, and VQwDataHandler::VQwDataHandler().
Referenced by QwCombiner(), QwCombinerSubsystem::QwCombinerSubsystem(), and QwCombinerSubsystem::QwCombinerSubsystem().
Here is the call graph for this function:
Here is the caller graph for this function:| QwCombiner::QwCombiner | ( | const QwCombiner & | source | ) |
Copy constructor.
Definition at line 34 of file QwCombiner.cc.
References fErrorFlagMask, fErrorFlagPointer, QwCombiner(), and VQwDataHandler::VQwDataHandler().
Here is the call graph for this function:
|
override |
Virtual destructor.
Destructor.
Definition at line 42 of file QwCombiner.cc.
References VQwDataHandler::fOutputVar.
|
inlineprotected |
Default constructor (Protected for child class access)
Definition at line 57 of file QwCombiner.h.
|
overridevirtual |
Connect to Channels (asymmetry/difference only)
| asym | Subsystem array with asymmetries |
| diff | Subsystem array with differences |
Connect to the dependent and independent channels
Fill vector of pointers to the relevant data elements
Reimplemented from VQwDataHandler.
Definition at line 171 of file QwCombiner.cc.
References VQwHardwareChannel::Clone(), QwLog::endl(), VQwDataHandler::fDependentFull, VQwDataHandler::fDependentName, VQwDataHandler::fDependentType, VQwDataHandler::fDependentVar, fErrorFlagPointer, fIndependentName, fIndependentType, fIndependentVar, VQwDataHandler::fName, VQwDataHandler::fOutputVar, VQwDataElement::GetElementName(), QwSubsystemArrayParity::GetEventcutErrorFlagPointer(), VQwDataElement::kDerived, VQwDataHandler::kHandleTypeAsym, VQwDataHandler::kHandleTypeDiff, VQwDataHandler::kHandleTypeMps, QwMessage, QwWarning, MQwPublishable< U, T >::RequestExternalPointer(), MQwPublishable_child< QwDataHandlerArray, VQwDataHandler >::RequestExternalPointer(), VQwDataElement::SetElementName(), and VQwDataElement::SetSubsystemName().
Here is the call graph for this function:
|
overridevirtual |
Connect to Channels (event only)
| event | Subsystem array with per-MPS yields |
Connect to the dependent and independent channels
Parameters: event Helicity event structure Returns: Zero on success
Fill vector of pointers to the relevant data elements
Reimplemented from VQwDataHandler.
Definition at line 293 of file QwCombiner.cc.
References VQwHardwareChannel::Clone(), QwLog::endl(), VQwDataHandler::fDependentName, VQwDataHandler::fDependentType, VQwDataHandler::fDependentVar, fErrorFlagPointer, fIndependentName, fIndependentType, fIndependentVar, VQwDataHandler::fName, VQwDataHandler::fOutputVar, VQwDataElement::GetElementName(), VQwDataElement::kDerived, VQwDataHandler::kHandleTypeAsym, VQwDataHandler::kHandleTypeDiff, VQwDataHandler::kHandleTypeMps, QwMessage, QwWarning, VQwDataElement::SetElementName(), and VQwDataElement::SetSubsystemName().
Here is the call graph for this function:
|
overridevirtual |
Load the channels and sensitivities.
Load the channel map
| mapfile | Filename of map file |
Reimplemented from VQwDataHandler.
Definition at line 68 of file QwCombiner.cc.
References QwLog::endl(), VQwDataHandler::fDependentFull, VQwDataHandler::fDependentName, VQwDataHandler::fDependentType, fErrorFlagMask, fIndependentName, fIndependentType, VQwDataHandler::fPublishList, fSensitivity, QwParameterFile::GetUInt(), VQwDataHandler::ParseHandledVariable(), QwError, QwMessage, QwParameterFile::ReadNextSection(), QwParameterFile::ReadSectionPreamble(), and QwParameterFile::RewindToFileStart().
Here is the call graph for this function:
|
overridevirtual |
Copy dependent variables to output variables (default processing).
Reimplemented from VQwDataHandler.
Reimplemented in QwCombinerSubsystem.
Definition at line 376 of file QwCombiner.cc.
References VQwDataHandler::CalcOneOutput(), VQwDataHandler::fDependentVar, fErrorFlagMask, fErrorFlagPointer, fIndependentVar, VQwDataHandler::fOutputVar, and fSensitivity.
Referenced by QwCombinerSubsystem::ProcessData().
Here is the call graph for this function:
Here is the caller graph for this function:
|
protected |
Error flag mask.
Definition at line 60 of file QwCombiner.h.
Referenced by LoadChannelMap(), ProcessData(), QwCombiner(), and QwCombiner().
|
protected |
Definition at line 61 of file QwCombiner.h.
Referenced by ConnectChannels(), ConnectChannels(), ProcessData(), QwCombiner(), and QwCombiner().
|
protected |
Definition at line 65 of file QwCombiner.h.
Referenced by ConnectChannels(), ConnectChannels(), and LoadChannelMap().
|
protected |
List of channels to use in the combiner.
Definition at line 64 of file QwCombiner.h.
Referenced by ConnectChannels(), ConnectChannels(), and LoadChannelMap().
|
protected |
Definition at line 66 of file QwCombiner.h.
Referenced by ConnectChannels(), ConnectChannels(), and ProcessData().
|
protected |
Definition at line 67 of file QwCombiner.h.
Referenced by LoadChannelMap(), and ProcessData().