Public Member Functions | |
MCoincidenceTester (QSequence *s) | |
constructor | |
~MCoincidenceTester () | |
destructor | |
void | Init () |
Init method. | |
QEvent * | Do (QEvent *ev) |
Do method. | |
void | Done () |
Done method. | |
Private Member Functions | |
void | ProduceSummaryPlots (const std::list< QCoincidence > &coincList) const |
produce summary plots from coincidences in coincList | |
void | DumpEventList (const std::list< QCoincidence > &coincList) |
dump event list from coincidences in coincList | |
void | DumpCoincidenceList (const std::list< QCoincidence > &coincList, const std::string &fileName) const |
dump coincidence list in the same format as the ouptput of geant | |
void | ReadCutsFile () |
read file containing coincidence filtering parameters | |
double | GetMinimumSumOfDistances (const QCoincidence &coinc, const QTower &tower) const |
return the minimum sum of distances between the events in a coincidence | |
Private Attributes | |
QCoincidenceFiller * | fFiller |
std::string | fOutList |
std::string | fCoincList |
std::string | fCutFile |
std::string | fTowerFile |
bool | fSkipExecution |
std::list< QCoincidenceFilter * > | fFilters |
QVector * | fEventList |
bool | fMultHisto |
bool | fDistanceHisto |
bool | fPositionHisto |
bool | fMultTimeGraph |
bool | fMultPositionGraph |
bool | fMultDurationGraph |
bool | fDistanceTimeGraph |
bool | fSummaryPlots |
std::string | fSummaryFile |
void MCoincidenceTester::DumpCoincidenceList | ( | const std::list< QCoincidence > & | coincList, | |
const std::string & | fileName | |||
) | const [private] |
dump coincidence list in the same format as the ouptput of geant
The first line in the output is a comment line All others lines represent an event. Each line has the following fields:
References QBaseModule::Error(), and QBaseModule::Info().
Referenced by Done().
void MCoincidenceTester::ReadCutsFile | ( | ) | [private] |
read file containing coincidence filtering parameters
Each line represents a cut. Lines beginning with # are treated as comments and are ignored. Each cut line must start with a valid tag, followed by a set of values. The format for the values depends on the particular tag. Some tags can occur only once in the file, while others can occur more than once.
The filters will be applied with the same order of appearance of the corresponding in the cuts file. For filters that allow multiple tags the first occurrence will matter.
Available tags are:
References QBaseModule::Debug(), QBaseModule::Error(), fCutFile, fFilters, fSkipExecution, fTowerFile, QBaseModule::Info(), QPositionFilter::LoadDetectorMap(), QPositionFilter::SetCut(), QEnergyFilter::SetCuts(), QCoPositionSplitter::SetRange(), and QBaseModule::Warn().
Referenced by Init().
double MCoincidenceTester::GetMinimumSumOfDistances | ( | const QCoincidence & | coinc, | |
const QTower & | tower | |||
) | const [private] |
return the minimum sum of distances between the events in a coincidence
coinc | the coincidence on which the minimum sum of distances is to be evaluated | |
tower | an already configured QTower that will be used to evaluate distances |
References QBaseModule::Error(), QTower::GetCrystal(), QGeomVector::GetDistance(), QCoincidence::GetEvents(), and QCuboid::GetPosition().
Referenced by ProduceSummaryPlots().
QCoincidenceFiller* MCoincidenceTester::fFiller [private] |
std::string MCoincidenceTester::fOutList [private] |
name of the output file containing the list of selected events
Referenced by Done(), DumpEventList(), and Init().
std::string MCoincidenceTester::fCoincList [private] |
std::string MCoincidenceTester::fCutFile [private] |
name of the input file specifying the filters to be applied
Referenced by Init(), and ReadCutsFile().
std::string MCoincidenceTester::fTowerFile [private] |
name of the file containing detector map description
Referenced by Init(), ProduceSummaryPlots(), and ReadCutsFile().
bool MCoincidenceTester::fSkipExecution [private] |
if true, execution of this module will be skipped
Referenced by ReadCutsFile().
std::list<QCoincidenceFilter*> MCoincidenceTester::fFilters [private] |
list of filters to be applied to coincidences
Referenced by Done(), and ReadCutsFile().
QVector* MCoincidenceTester::fEventList [private] |
Vector containing the list of events that passed the filters. Used only if OutList is to be dumped into a SeqAuxData variable
Referenced by DumpEventList(), and ~MCoincidenceTester().
bool MCoincidenceTester::fMultHisto [private] |
variables controlling summary plots
Referenced by Init(), and ProduceSummaryPlots().
bool MCoincidenceTester::fDistanceHisto [private] |
variables controlling summary plots
Referenced by Init(), and ProduceSummaryPlots().
bool MCoincidenceTester::fPositionHisto [private] |
variables controlling summary plots
Referenced by Init(), and ProduceSummaryPlots().
bool MCoincidenceTester::fMultTimeGraph [private] |
variables controlling summary plots
Referenced by Init(), and ProduceSummaryPlots().
bool MCoincidenceTester::fMultPositionGraph [private] |
variables controlling summary plots
Referenced by Init(), and ProduceSummaryPlots().
bool MCoincidenceTester::fMultDurationGraph [private] |
variables controlling summary plots
Referenced by Init(), and ProduceSummaryPlots().
bool MCoincidenceTester::fDistanceTimeGraph [private] |
variables controlling summary plots
Referenced by Init(), and ProduceSummaryPlots().
bool MCoincidenceTester::fSummaryPlots [private] |
std::string MCoincidenceTester::fSummaryFile [private] |
variables controlling summary plots
Referenced by Init(), and ProduceSummaryPlots().