Public Member Functions | |
QPositionFilter (const std::string &name="QPositionFilter") | |
constructor | |
virtual | ~QPositionFilter () |
destructor | |
virtual bool | Filter (const QCoincidence &coinc) const |
filter coincidence based on the geometrical pattern | |
virtual std::string | Dump () const |
dump filter parameters | |
void | SetCut (const Cuore::QInterval &cut, unsigned int howMany) |
set cuts for this filter | |
bool | LoadDetectorMap (const std::string &fileName) |
load detector map | |
Protected Member Functions | |
double | GetDistance (int ch1, int ch2) const |
evaluate the distance between two detectors | |
Protected Attributes | |
Cuore::QInterval | fCut |
unsigned int | fHowMany |
QTower | fTower |
bool QPositionFilter::Filter | ( | const QCoincidence & | coinc | ) | const [virtual] |
filter coincidence based on the geometrical pattern
coinc | the coincidence to be filtered |
Implements QCoincidenceFilter.
References fCut, fHowMany, GetDistance(), QCoincidence::GetEvents(), and QCoincidence::Size().
std::string QPositionFilter::Dump | ( | ) | const [virtual] |
dump filter parameters
Implements QCoincidenceFilter.
Reimplemented in QCoPatternSplitter, and QCoPositionSplitter.
void QPositionFilter::SetCut | ( | const Cuore::QInterval & | cut, | |
unsigned int | howMany | |||
) | [inline] |
set cuts for this filter
cut | allowed range of distances between the events in the coincidence. Distances are in mm. | |
howMany | minimum number of crystal pairs whose distance must fall within the values defined by the cut. 0 means all. |
References fCut, and fHowMany.
Referenced by MCoincidenceTester::ReadCutsFile().
bool QPositionFilter::LoadDetectorMap | ( | const std::string & | fileName | ) |
load detector map
filename | file containing detector map. It can be a real file or "DB". In this case the detector map is loaded from db |
References fTower, and QTower::LoadMap().
Referenced by MCoincidenceFlagger::Done(), and MCoincidenceTester::ReadCutsFile().
double QPositionFilter::GetDistance | ( | int | ch1, | |
int | ch2 | |||
) | const [protected] |
evaluate the distance between two detectors
ch1 | logical channel of one detector | |
ch2 | logical channel of the other detector |
References fTower, QTower::GetCrystal(), QGeomVector::GetDistance(), and QCuboid::GetPosition().
Referenced by Filter(), and QCoPositionSplitter::Split().
Cuore::QInterval QPositionFilter::fCut [protected] |
unsigned int QPositionFilter::fHowMany [protected] |
QTower QPositionFilter::fTower [protected] |
geometric description of the tower
Referenced by GetDistance(), and LoadDetectorMap().