Diana Software
Public Member Functions | Private Attributes | List of all members
MCoincidenceVeto Class Reference

Filters coincident events. More...

Inheritance diagram for MCoincidenceVeto:
QFilter QBaseModule QModuleTimeProfiling

Public Member Functions

 MCoincidenceVeto (QSequence *s)
 constructor More...
 
 ~MCoincidenceVeto ()
 destructor More...
 
void GetCuts ()
 Get cuts from config file. More...
 
bool Filter (const QEvent *ev)
 return true if ev passes the cuts More...
 
- Public Member Functions inherited from QFilter
 QFilter ()
 constructor More...
 
virtual ~QFilter ()
 destructor More...
 
virtual void GetCuts (const QEvent &ev)=0
 Initialize all cuts, possibly from config file. More...
 
virtual bool Filter (const QEvent &ev)
 return true when ev passes the cuts, false otherwise More...
 
virtual bool Filter (const QEvent &ev, const QEventList &neigh)
 return true when ev passes the cuts (also on the basis of neighbour events), false otherwise. More...
 
virtual void Done ()
 optionally one can also implement actions after the event loop 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 QGlobalDataManagerGlobalData () 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 QSequenceGetSequence () 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

double fTimeWindow
 Window of time for events to be considered coincident. More...
 
bool fSameCrystal
 Require both events in same crystal? More...
 

Additional Inherited Members

- Public Types inherited from QBaseModule
enum  Type {
  Module , Filter , Reader , Writer ,
  Driver
}
 
- Protected Types inherited from QFilter
enum  LogicFlag { AND , CASE , OR }
 
- Protected Member Functions inherited from QFilter
LogicFlag GetLogicFlag () const
 
- Protected Member Functions inherited from QBaseModule
QModuleConfigGetConfig ()
 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...
 

Detailed Description

Filters coincident events.

Author
Laura Kogler

Uses information saved in AuxData variables "TimeSinceFullTower", "TimeUntilFullTower", "TimeSinceSingleCrystal", and "TimeUntilSingleCrystal" to filter out coincident events.

Definition at line 40 of file MCoincidenceVeto.hh.

Constructor & Destructor Documentation

◆ MCoincidenceVeto()

MCoincidenceVeto::MCoincidenceVeto ( QSequence s)

constructor

Definition at line 7 of file MCoincidenceVeto.cc.

◆ ~MCoincidenceVeto()

MCoincidenceVeto::~MCoincidenceVeto ( )

destructor

Definition at line 12 of file MCoincidenceVeto.cc.

Member Function Documentation

◆ Filter()

bool MCoincidenceVeto::Filter ( const QEvent ev)

return true if ev passes the cuts

Definition at line 24 of file MCoincidenceVeto.cc.

References fSameCrystal, and fTimeWindow.

◆ GetCuts()

void MCoincidenceVeto::GetCuts ( )

Get cuts from config file.

Definition at line 18 of file MCoincidenceVeto.cc.

References fSameCrystal, fTimeWindow, QBaseModule::GetBool(), and QBaseModule::GetDouble().

Member Data Documentation

◆ fSameCrystal

bool MCoincidenceVeto::fSameCrystal
private

Require both events in same crystal?

Definition at line 60 of file MCoincidenceVeto.hh.

Referenced by Filter(), and GetCuts().

◆ fTimeWindow

double MCoincidenceVeto::fTimeWindow
private

Window of time for events to be considered coincident.

Definition at line 57 of file MCoincidenceVeto.hh.

Referenced by Filter(), and GetCuts().


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