![]() |
Diana Software
|
A quick module to flag coincidences. More...
Public Member Functions | |
| MFlagCoincidence (QSequence *s) | |
| constructor More... | |
| ~MFlagCoincidence () | |
| destructor More... | |
| void | Init () |
| Init method. More... | |
| QEvent * | Do (QEvent *ev) |
| Do method. More... | |
| void | Done () |
| Done method. More... | |
Public Member Functions inherited from QModule | |
| QModule () | |
| constuctor More... | |
| virtual | ~QModule () |
| destructor More... | |
| virtual void | Init (QEvent &ev)=0 |
| Init method is called before event loop. More... | |
| virtual void | Do (QEvent &ev) |
| Do method is called on each event, getting the event as argument. More... | |
| virtual void | Do (QEvent &ev, const QEventList &neighbours) |
| Do method is called on each event, getting the event and its neighbours as argument. More... | |
Public Member Functions inherited from QBaseModule | |
| QBaseModule (Type type) | |
| constructor More... | |
| virtual | ~QBaseModule () |
| constructor More... | |
| double | GetDouble (const std::string &parname, double defVal, bool warnCfg=true) const |
| Get a double parameter from config file. More... | |
| std::vector< double > | GetVectorDouble (const std::string &parname, std::vector< double > defVal, bool warnCfg=true) const |
| Get a std::vector<double> parameter from config file with syntax "{x,y,z}". More... | |
| int | GetInt (const std::string &parname, int defVal, bool warnCfg=true) const |
| Get an int parameter from config file ( see GetDouble() ) More... | |
| std::vector< int > | GetVectorInt (const std::string &parname, std::vector< int > defVal, bool warnCfg=true) const |
| Get an vector<int> parameter from config file ( see GetVectorDouble() ) More... | |
| bool | GetBool (const std::string &parname, bool defVal, bool warnCfg=true) const |
| Get a bool parameter from config file ( see GetDouble() ) More... | |
| std::vector< bool > | GetVectorBool (const std::string &parname, std::vector< bool > defVal, bool warnCfg=true) const |
| Get a vector<bool> parameter from config file ( see GetVectorDouble() ) More... | |
| const std::string & | GetString (const std::string &parname, const std::string &defVal, bool warnCfg=true) const |
| Get a string parameter from config file ( see GetDouble() ) More... | |
| std::vector< std::string > | GetVectorString (const std::string &parname, std::vector< std::string > defVal, bool warnCfg=true) const |
| Get a vector<string> parameter from config file ( see GetVectorDouble() ) More... | |
| void | Debug (const char *descr,...) const |
| Send a debug message (used to debug the module) with printf syntax. More... | |
| void | Info (const char *descr,...) const |
| Send an info message (information) with printf syntax. More... | |
| void | Warn (const char *descr,...) const |
| Send a warning message (an error that the framework can recover) with printf syntax. More... | |
| void | Error (const char *descr,...) const |
| Send an error message (an error that the framework cannot recover) with printf syntax. More... | |
| void | Panic (const char *descr,...) const |
| Send a panic message (stops the framework) with printf syntax. More... | |
| const QGlobalDataManager & | GlobalData () const |
| interface for saving and loading global QObjects More... | |
| bool | GetRunAgain () const |
| Check if the sequence will be reiterated. More... | |
| void | SetRunAgain (bool b) |
| Set that the sequence will be reiterated. More... | |
| unsigned int | GetIteration () const |
| Get Current sequence iteration. More... | |
| unsigned int | GetOccurrence () const |
| get the number of times the same module is loaded inside a QSequence More... | |
| bool | isEnabled () const |
| check if module is enabled More... | |
| std::string | GetFullPath () const |
| Get Full Path of module "GetName() + "." + GetOccurrence". More... | |
| const std::string & | GetName () const |
| Get Module name. More... | |
| const std::string & | GetLabel () const |
| Get Module name + the optional ExtraLabel ("name_extralabel") More... | |
| MsgLevel | GetVerbosity () |
| get verbosity level set from config file More... | |
| const QSequence & | GetSequence () const |
| get reference to this sequence More... | |
| void | Update (QSequence *s, unsigned int occurrence) |
| set the occurrence in the same sequence. MV FIXME: should not be public More... | |
| bool | NeedNeighbours () |
| check wheter this module needs neighbours (available after the first event is processed) More... | |
| void | BeginBase (QEventAssembler &ev) |
| Begin Base method is called before event loop. More... | |
| bool | ProcessBase (QEventAssembler &ev, QEventList &evl, const bool exec, QEventList &ovl) |
| ProcessBase method is called for each event, getting the event and as argument. More... | |
| void | EndBase () |
| EndBase method is called after event loop. More... | |
| const std::vector< QEventLabel > & | GetRequiredLabels () const |
| Get labels of objects required by this module. More... | |
Private Attributes | |
| std::multiset< int > | fCoincidentEvents |
| Vector of coincident event numbers. More... | |
| std::vector< unsigned int > | fPreviousEvents |
| Event number of previous events. More... | |
| unsigned int | fCurrentEvent |
| Event number of current event. More... | |
| std::vector< unsigned long long > | fPreviousTimes |
| Time of previous events. More... | |
| unsigned long long | fCurrentTime |
| Time of current event. More... | |
| double | fWindow |
| Time window to be considered coincident (in nanoseconds) More... | |
| int | fIteration |
| What iteration are we on? More... | |
| int | fnCoincidences |
| Number of coincidences identified. More... | |
| std::string | fFlagName |
| Name of variable to store in AuxData. More... | |
| std::string | fMultName |
| Name of multiplicity variable in AuxData. More... | |
Additional Inherited Members | |
Public Types inherited from QBaseModule | |
| enum | Type { Module , Filter , Reader , Writer , Driver } |
Protected Member Functions inherited from QBaseModule | |
| QModuleConfig & | GetConfig () |
| Get module config. More... | |
| void | SetNeedNeighbours (bool need) |
| set wheter this module needs neighbours More... | |
Protected Member Functions inherited from QModuleTimeProfiling | |
| QModuleTimeProfiling () | |
| ctor initialized internal variables More... | |
| virtual | ~QModuleTimeProfiling () |
| dtor does nothing More... | |
| void | SetTimeProfilingOn (bool val) |
| Set the time profiling on/off. More... | |
| bool | GetTimeProfilingOn () const |
| Check if the time profiling is on. More... | |
| void | ResetTimer () |
| Reset the timer to now. More... | |
| double | GetTimer () const |
| return the time since the last reset More... | |
| virtual void | StartProcessCall () |
| Start of a process call. More... | |
| virtual void | EndProcessCall () |
| End a process call and increment time and calls. More... | |
| unsigned long long | GetProcessCalls () const |
| Return the total number of process calls. More... | |
| double | GetTotalProcessTime () const |
| Return the total processing time. More... | |
| double | GetProcessCallTime () const |
| Return the average time of a single process call. More... | |
| std::string | GetTimeProfileReport (const std::string &prefix="") const |
| Report the time profiling. More... | |
Protected Attributes inherited from QBaseModule | |
| bool | fExecuted |
Protected Attributes inherited from QModuleTimeProfiling | |
| bool | fTimeProfilingOn |
| Report the time profiling. More... | |
| unsigned long long int | fProcessCalls |
| NUmber of calls to the process. More... | |
| double | fProcessTime |
| Total time spent running the process. More... | |
A quick module to flag coincidences.
Will flag events that occur within a given time window of any other events. Must be run on time sorted input files!!!
module FlagCoincidence
verbosity = info
enable = true
Window = 100.
FlagName = coincidence
MultiplicityName = multiplicity
endmod
Definition at line 46 of file MFlagCoincidence.hh.
| MFlagCoincidence::MFlagCoincidence | ( | QSequence * | s | ) |
constructor
Definition at line 9 of file MFlagCoincidence.cc.
| MFlagCoincidence::~MFlagCoincidence | ( | ) |
destructor
Definition at line 14 of file MFlagCoincidence.cc.
Do method.
Definition at line 46 of file MFlagCoincidence.cc.
References fCoincidentEvents, fCurrentEvent, fCurrentTime, fFlagName, fIteration, fMultName, fPreviousEvents, fPreviousTimes, fWindow, QTime::GetFromStartRunNs(), and QEvent::GetReadNumber().
|
virtual |
Done method.
Implements QModule.
Definition at line 93 of file MFlagCoincidence.cc.
References fIteration, and QBaseModule::SetRunAgain().
| void MFlagCoincidence::Init | ( | ) |
Init method.
Definition at line 19 of file MFlagCoincidence.cc.
References QBaseModule::Debug(), fCoincidentEvents, fFlagName, fIteration, fMultName, fnCoincidences, fWindow, QBaseModule::GetDouble(), QBaseModule::GetIteration(), QBaseModule::GetString(), QBaseModule::Info(), and QBaseModule::Panic().
|
private |
Vector of coincident event numbers.
Definition at line 65 of file MFlagCoincidence.hh.
|
private |
Event number of current event.
Definition at line 71 of file MFlagCoincidence.hh.
Referenced by Do().
|
private |
|
private |
Name of variable to store in AuxData.
Definition at line 89 of file MFlagCoincidence.hh.
|
private |
What iteration are we on?
Definition at line 83 of file MFlagCoincidence.hh.
|
private |
Name of multiplicity variable in AuxData.
Definition at line 92 of file MFlagCoincidence.hh.
|
private |
Number of coincidences identified.
Definition at line 86 of file MFlagCoincidence.hh.
Referenced by Init().
|
private |
Event number of previous events.
Definition at line 68 of file MFlagCoincidence.hh.
Referenced by Do().
|
private |
|
private |
Time window to be considered coincident (in nanoseconds)
Definition at line 80 of file MFlagCoincidence.hh.