MarlinTPC
1.2.0
|
Row based hypercubes. More...
#include <RowBasedFastHoughTransformationProcessor.h>
Public Member Functions | |
rb_HyperCube (unsigned int *, hyperPlaneListType &, intListType &, unsigned int=0) | |
Construct row based hypercube. More... | |
void | print () const |
Print hypercube. | |
hitListType | divide (int, int, int, int, float, float) |
Divide hypercube (recursively). More... | |
Row based hypercubes.
Has entries with distances and hyperplanes. Subdivided recursively until first track candidate found or maximal (splitting) level reached.
marlintpc::rb_HyperCube::rb_HyperCube | ( | unsigned int * | setup, |
hyperPlaneListType & | planes, | ||
intListType & | distances, | ||
unsigned int | level = 0 |
||
) |
Construct row based hypercube.
[in] | setup | number of parameters per measurement (pad plane, drift time) |
[in] | planes | list of hyperplanes (pointer) |
[in] | distances | list of distances |
[in] | level | level (number of cube splittings) |
References marlintpc::nCube.
hitListType marlintpc::rb_HyperCube::divide | ( | int | maxCube, |
int | minRows, | ||
int | minLevel, | ||
int | maxLevel, | ||
float | effCut, | ||
float | purCut | ||
) |
Divide hypercube (recursively).
[in] | maxCube | maximal number of cubes to check. |
[in] | minRows | minimum number of rows in child. |
[in] | minLevel | minimal level (number of splittings) |
[in] | maxLevel | maximal level (number of splittings) |
[in] | effCut | efficiency cut (minimal hit density) |
[in] | purCut | purity cut (maximal hit density) |
References divide(), marlintpc::rb_HyperPlane::getCut(), marlintpc::rb_HyperPlane::getRow(), marlintpc::rb_HyperPlane::getStep(), and marlintpc::nCube.
Referenced by divide(), and marlintpc::RowBasedFastHoughTransformationProcessor::processEvent().