 |
Belle II Software
release-05-02-19
|
The factory serves as an interface between all x-hit-filters and a user only knowing their name (in string), but not their type.
More...
#include <XHitFilterFactory.h>
|
typedef FilterID::filterTypes | XHitFilterType |
| constructor where nothing has been passed More...
|
|
using | TwoHitFunction = typename std::function< double(const PointType &, const PointType &)> |
| typedef for more readable function-type - to be used for 2-hit-selectionVariables.
|
|
using | ThreeHitFunction = typename std::function< double(const PointType &, const PointType &, const PointType &)> |
| typedef for more readable function-type - to be used for 3-hit-selectionVariables.
|
|
using | FourHitFunction = typename std::function< double(const PointType &, const PointType &, const PointType &, const PointType &)> |
| typedef for more readable function-type - to be used for 4-hit-selectionVariables.
|
|
template<class PointType>
class Belle2::XHitFilterFactory< PointType >
The factory serves as an interface between all x-hit-filters and a user only knowing their name (in string), but not their type.
Definition at line 46 of file XHitFilterFactory.h.
◆ XHitFilterType
constructor where nothing has been passed
shortCut for better readability.
Definition at line 65 of file XHitFilterFactory.h.
◆ get2HitInterface()
For given name of a variableType a function for the corresponding Filter is returned.
2-hit:
2+1-hit:
Definition at line 88 of file XHitFilterFactory.h.
91 return [ = ](
const PointType & outerHit,
const PointType & innerHit) ->
double {
92 prepareStuff(outerHit, innerHit);
98 return [ = ](
const PointType & outerHit,
const PointType & innerHit) ->
double {
99 prepareStuff(outerHit, innerHit);
105 return [ = ](
const PointType & outerHit,
const PointType & innerHit) ->
double {
106 prepareStuff(outerHit, innerHit);
112 return [ = ](
const PointType & outerHit,
const PointType & innerHit) ->
double {
113 prepareStuff(outerHit, innerHit);
119 return [ = ](
const PointType & outerHit,
const PointType & innerHit) ->
double {
120 prepareStuff(outerHit, innerHit);
126 auto prepareStuffHiOc = [ = ](
const PointType & outerHit,
const PointType & innerHit) ->
void {
127 TVector3 tOuterHit(outerHit.X(), outerHit.Y(), outerHit.Z());
128 TVector3 tInnerHit(innerHit.X(), innerHit.Y(), innerHit.Z());
135 return [ = ](
const PointType & outerHit,
const PointType & innerHit) ->
double {
136 prepareStuffHiOc(outerHit, innerHit);
142 return [ = ](
const PointType & outerHit,
const PointType & innerHit) ->
double {
143 prepareStuffHiOc(outerHit, innerHit);
149 return [ = ](
const PointType & outerHit,
const PointType & innerHit) ->
double {
150 prepareStuffHiOc(outerHit, innerHit);
156 return [ = ](
const PointType & outerHit,
const PointType & innerHit) ->
double {
157 prepareStuffHiOc(outerHit, innerHit);
163 return [ = ](
const PointType & outerHit,
const PointType & innerHit) ->
double {
164 prepareStuffHiOc(outerHit, innerHit);
170 return [ = ](
const PointType & outerHit,
const PointType & innerHit) ->
double {
171 prepareStuffHiOc(outerHit, innerHit);
177 return [ = ](
const PointType & outerHit,
const PointType & innerHit) ->
double {
178 prepareStuffHiOc(outerHit, innerHit);
185 B2ERROR(
" XHitFilterAdapter-2Hit: given name (raw/full): " << variableType <<
187 " is not known, returning dummy function with 0.0 as a result instead!");
189 return [&](
const PointType&,
const PointType&) ->
double {
return 0.0; };
◆ get3HitInterface()
For given name of a variableType a function for the corresponding Filter is returned.
3-hit:
3+1hit:
Definition at line 212 of file XHitFilterFactory.h.
◆ get4HitInterface()
For given name of a variableType a function for the corresponding Filter is returned.
4-hit:
Definition at line 331 of file XHitFilterFactory.h.
The documentation for this class was generated from the following file:
@ distanceZ
string name of filter dZ
void resetValues(TVector3 &outerHit, TVector3 ¢erHit, TVector3 &innerHit)
Overrides Constructor-Setup.
double calcAngleRZ()
calculates the angle between the hits/vectors (RZ), returning unit: none (calculation for degrees is ...
double calcDist3D() const
calculates the distance between the hits (3D), returning unit: cm^2 for speed optimization
@ anglesHighOccupancy3D
string name of filter a3D high occupancy
@ normedDistance3D
string name of filter nd3D
TwoHitFilters m_twoHit
contains all 2-hit-filters.
double calcCircleDist2IP()
calculates the distance of the point of closest approach of circle to the IP, returning unit: cm
double calcNormedDist3D() const
calculates the normed distance between the hits (3D), return unit: none
ThreeHitFunction get3HitInterface(std::string variableName)
For given name of a variableType a function for the corresponding Filter is returned.
double calcDeltaSlopeRZ()
calculates deviations in the slope of the inner segment and the outer segment, returning unit: none
double calcSlopeRZ() const
calculates the angle of the slope of the hits in RZ, returnValue = theta = atan(r/z)
@ slopeRZ
string name of filter slopeRZ
double calcDistZ() const
calculates the distance between the hits (Z only), returning unit: cm
double calcAngleXY()
calculates the angle between the hits/vectors (XY), returning unit: none (calculation for degrees is ...
@ distanceXY
string name of filter dXY
@ distanceHighOccupancy2IP
string name of filter d2IP high occupancy
double calcAngle3D()
calculates the angle between the hits/vectors (3D), returning unit: none (calculation for degrees is ...
ThreeHitFilters m_threeHit
contains all 3-hit-filters.
@ pTHighOccupancy
string name of filter pT high occupancy
@ anglesHighOccupancyXY
string name of filter aXY high occupancy
static std::string getTypeName(filterTypes filterType)
returns name of given type, needed for compatibility with other modules
TVector3 m_virtualIP
contains global coordinates of virtual interaction point.
double calcHelixParameterFit()
calculates the helixparameter describing the deviation in z per unit angle, returning unit: none
static filterTypes getTypeEnum(const std::string &filterString)
returns type of given name, needed for compatibility with other modules.
double calcDistXY() const
calculates the distance between the hits (XY), returning unit: cm^2 for speed optimization
FilterID::filterTypes XHitFilterType
constructor where nothing has been passed
typename std::function< double(const PointType &, const PointType &, const PointType &)> ThreeHitFunction
typedef for more readable function-type - to be used for 3-hit-selectionVariables.
@ anglesHighOccupancyRZ
string name of filter aRZ high occupancy
@ helixParameterHighOccupancyFit
string name of filter hFit high occupancy
double calcPt()
calculates the estimation of the transverse momentum of the 3-hit-tracklet, returning unit: GeV/c
@ deltaSlopeHighOccupancyRZ
string name of filter dslopeRZ high occupancy