Belle II Software development
FilterID Class Reference

Class to identify a filter type used by sectorFriends. More...

#include <FilterID.h>

Public Types

enum  filterTypes {
  distance3D ,
  distanceXY ,
  distanceZ ,
  slopeRZ ,
  normedDistance3D ,
  anglesHighOccupancy3D ,
  anglesHighOccupancyXY ,
  anglesHighOccupancyRZ ,
  distanceHighOccupancy2IP ,
  deltaSlopeHighOccupancyRZ ,
  pTHighOccupancy ,
  helixParameterHighOccupancyFit ,
  angles3D ,
  anglesRZ ,
  anglesXY ,
  deltaSlopeRZ ,
  pT ,
  distance2IP ,
  helixParameterFit ,
  deltaSOverZ ,
  deltaSlopeZOverS ,
  deltapTHighOccupancy ,
  deltaDistanceHighOccupancy2IP ,
  deltapT ,
  deltaDistance2IP ,
  nbFinderLost ,
  cellularAutomaton ,
  ziggZaggXY ,
  ziggZaggXYWithSigma ,
  ziggZaggRZ ,
  circlefit ,
  helixfit ,
  simpleLineFit3D ,
  hopfield ,
  greedy ,
  tcDuel ,
  tcFinderCurr ,
  calcQIbyKalman ,
  overlapping ,
  silentTcc ,
  silentHitFinder ,
  silentSegFinder ,
  alwaysTrue2Hit ,
  alwaysFalse2Hit ,
  alwaysTrue3Hit ,
  alwaysFalse3Hit ,
  alwaysTrue4Hit ,
  alwaysFalse4Hit ,
  random2Hit ,
  random3Hit ,
  random4Hit ,
  overHighestAllowedLayer ,
  outOfSectorRange ,
  numFilters
}
 filterTyoes contains enums assigning unique values for each filter type allowing fast filter type recognition More...
 

Public Member Functions

 FilterID ()
 Constructor.
 
 ~FilterID ()
 Destructor.
 

Static Public Member Functions

static filterTypes getFilterType (const std::string &filterString)
 converts existing string with name of filter type into suitable enum value.
 
static filterTypes getFilterType (int filterInt)
 converts existing int with filter type-compativble value into suitable enum value.
 
static std::string getFilterString (filterTypes filterType)
 converts existing enum value into suitable string with name of filter type.
 
static std::string getFilterString (int filterType)
 converts int value into suitable string with name of filter type (if int value is equal to values of enum).
 
static std::string getTypeName (filterTypes filterType)
 returns name of given type, needed for compatibility with other modules
 
static filterTypes getTypeEnum (const std::string &filterString)
 returns type of given name, needed for compatibility with other modules.
 

Static Public Attributes

static const std::string nameDistance3D = "distance3D"
 string name of filter d3D
 
static const std::string nameDistanceXY = "distanceXY"
 string name of filter dXY
 
static const std::string nameDistanceZ = "distanceZ"
 string name of filter dZ
 
static const std::string nameSlopeRZ = "slopeRZ"
 string name of filter slopeRZ
 
static const std::string nameNormedDistance3D = "normedDistance3D"
 string name of filter nd3D
 
static const std::string nameAnglesHighOccupancy3D = "HioCangles3D"
 string name of filter a3D high occupancy
 
static const std::string nameAnglesHighOccupancyXY = "HioCanglesXY"
 string name of filter aXY high occupancy
 
static const std::string nameAnglesHighOccupancyRZ = "HioCanglesRZ"
 string name of filter aRZ high occupancy
 
static const std::string nameDistanceHighOccupancy2IP = "HioCdistance2IP"
 string name of filter d2IP high occupancy
 
static const std::string nameDeltaSlopeHighOccupancyRZ = "HioCdeltaSlopeRZ"
 string name of filter dslopeRZ high occupancy
 
static const std::string namePTHighOccupancy = "HioCpT"
 string name of filter pT high occupancy
 
static const std::string nameHelixParameterHighOccupancyFit = "HioChelixFit"
 string name of filter hFit high occupancy
 
static const std::string nameAngles3D = "angles3D"
 string name of filter a3D
 
static const std::string nameAnglesRZ = "anglesRZ"
 string name of filter aRZ
 
static const std::string nameAnglesXY = "anglesXY"
 string name of filter aXY
 
static const std::string nameDeltaSlopeRZ = "deltaSlopeRZ"
 string name of filter dslopeRZ
 
static const std::string namePT = "pT"
 string name of filter pT
 
static const std::string nameDistance2IP = "distance2IP"
 string name of filter d2IP
 
static const std::string nameHelixParameterFit = "helixParameterFit"
 string name of filter helix Parameter Fit
 
static const std::string nameDeltaSOverZ = "deltaSOverZ"
 string name deltaSOverZ Filter
 
static const std::string nameDeltaSlopeZOverS = "deltaSlopeZOverS"
 string name deltaSlopeZOverS Filter
 
static const std::string nameDeltapTHighOccupancy = "HioCdeltaPt"
 string name of filter dPt high occupancy
 
static const std::string nameDeltaDistanceHighOccupancy2IP = "HioCdeltaDistance2IP"
 string name of filter dd2IP high occupancy
 
static const std::string nameDeltapT = "deltaPt"
 string name of filter dPt
 
static const std::string nameDeltaDistance2IP = "deltaDistance2IP"
 string name of filter dd2IP
 
static const std::string nameNbFinderLost = "NbFinderLost"
 string name Nb Finder filter
 
static const std::string nameCellularAutomaton = "CellularAutomaton"
 string name CA filter
 
static const std::string nameZiggZaggXY = "ZiggZaggXY"
 string name ZiggZaggXY filter
 
static const std::string nameZiggZaggXYWithSigma = "ZiggZaggXYWithSigma"
 string name ZiggZaggXYWithSigma filter
 
static const std::string nameZiggZaggRZ = "ZiggZaggRZ"
 string name ZiggZaggRZ filter
 
static const std::string nameCirclefit = "Circlefit"
 string name Circlefit filter
 
static const std::string nameHelixfit = "Helixfit"
 string name Helix Fit filter
 
static const std::string nameSimpleLineFit3D = "SimpleLineFit3D"
 string name SimpleLineFit3D filter
 
static const std::string nameHopfield = "Hopfield"
 string name Hopfield filter
 
static const std::string nameGreedy = "Greedy"
 string name Greedy filter
 
static const std::string nameTcDuel = "TcDuel"
 string name TC Duel filter
 
static const std::string nameTcFinderCurr = "TcFinderCurr"
 string name TC Finder Curr filter
 
static const std::string nameCalcQIbyKalman = "CalcQIbyKalman"
 string name CalcQIbyKalman filter
 
static const std::string nameOverlapping = "Overlapping"
 string name Overlapping filter
 
static const std::string nameSilentTcc = "SilentTcc"
 WARNING FIXME TODO some things are missing here (calcQIbyLineFit) and similar stuff.
 
static const std::string nameSilentHitFinder = "SilentHitFinder"
 string name Silent Kill Hit Finder filter
 
static const std::string nameSilentSegFinder = "SilentSegFinder"
 string name Silent Kill Seg Finder filter
 
static const std::string nameAlwaysTrue2Hit = "alwaysTrue2Hit"
 string name of a filter which will always say yes
 
static const std::string nameAlwaysFalse2Hit = "alwaysFalse2Hit"
 string name of a filter which will always say no
 
static const std::string nameAlwaysTrue3Hit = "alwaysTrue3Hit"
 string name of a filter which will always say yes
 
static const std::string nameAlwaysFalse3Hit = "alwaysFalse3Hit"
 string name of a filter which will always say no
 
static const std::string nameAlwaysTrue4Hit = "alwaysTrue4Hit"
 string name of a filter which will always say yes
 
static const std::string nameAlwaysFalse4Hit = "alwaysFalse4Hit"
 string name of a filter which will always say no
 
static const std::string nameRandom2Hit = "random2Hit"
 string name of a filter which will say yes or no by random choice
 
static const std::string nameRandom3Hit = "random3Hit"
 string name of a filter which will say yes or no by random choice
 
static const std::string nameRandom4Hit = "random4Hit"
 string name of a filter which will say yes or no by random choice
 
static const std::string nameOverHighestAllowedLayer = "overHighestAllowedLayer"
 string name of OverHighestAllowedLayer Filter
 
static const std::string nameOutOfSectorRange = "outOfSectorRange"
 string name out of sector range filter
 
static const boost::array< std::string, numFiltersnameVector
 array storing all the strings where the enums can be used to access their position
 
static const boost::array< FilterID::filterTypes, FilterID::numFiltersenumVector
 array storing all the enums where ints can be used to access their position (this is needed since enums can be converted to int but not otherwise)
 

Detailed Description

Class to identify a filter type used by sectorFriends.

is a simple converter to convert the enum used to access the filter-values (cutoffs) into readable values it contains enum values for speed optimized access of filter-data and strings for human-readable output

Definition at line 28 of file FilterID.h.

Member Enumeration Documentation

◆ filterTypes

filterTyoes contains enums assigning unique values for each filter type allowing fast filter type recognition

Enumerator
distance3D 

string name of filter d3D

distanceXY 

string name of filter dXY

distanceZ 

string name of filter dZ

slopeRZ 

string name of filter slopeRZ

normedDistance3D 

string name of filter nd3D

anglesHighOccupancy3D 

string name of filter a3D high occupancy

anglesHighOccupancyXY 

string name of filter aXY high occupancy

anglesHighOccupancyRZ 

string name of filter aRZ high occupancy

distanceHighOccupancy2IP 

string name of filter d2IP high occupancy

deltaSlopeHighOccupancyRZ 

string name of filter dslopeRZ high occupancy

pTHighOccupancy 

string name of filter pT high occupancy

helixParameterHighOccupancyFit 

string name of filter hFit high occupancy

angles3D 

string name of filter a3D

anglesRZ 

string name of filter aRZ

anglesXY 

string name of filter aXY

deltaSlopeRZ 

string name of filter dslopeRZ

pT 

string name of filter pT

distance2IP 

string name of filter d2IP

helixParameterFit 

string name of filter helix Parameter Fit

deltaSOverZ 

deltaSOverZ Filter

deltaSlopeZOverS 

deltaSlopeZOverS Filter

deltapTHighOccupancy 

string name of filter dPt high occupancy

deltaDistanceHighOccupancy2IP 

string name of filter dd2IP high occupancy

deltapT 

string name of filter dPt

deltaDistance2IP 

string name of filter dd2IP

nbFinderLost 

Nb Finder filter.

cellularAutomaton 

CA filter.

ziggZaggXY 

ziggZaggXY filter

ziggZaggXYWithSigma 

ziggZaggXYWithSigma filter

ziggZaggRZ 

ziggZaggRZ filter

circlefit 

circlefit filter

helixfit 

Helix Fit filter.

simpleLineFit3D 

simpleLineFit3D filter

hopfield 

Hopfield filter.

greedy 

Greedy filter.

tcDuel 

TC Duel filter.

tcFinderCurr 

TC Finder Curr filter.

calcQIbyKalman 

calcQIbyKalman filter

overlapping 

overlapping filter

silentTcc 

Silent Kill TCC filter.

silentHitFinder 

Silent Kill HitFinder filter.

silentSegFinder 

Silent Kill SefFinder filter.

alwaysTrue2Hit 

a filter with this ID will always say True

alwaysFalse2Hit 

a filter with this ID will always say False

alwaysTrue3Hit 

a filter with this ID will always say True

alwaysFalse3Hit 

a filter with this ID will always say False

alwaysTrue4Hit 

a filter with this ID will always say True

alwaysFalse4Hit 

a filter with this ID will always say False

random2Hit 

a filter with this ID will say yes or no by random choice

random3Hit 

a filter with this ID will say yes or no by random choice

random4Hit 

a filter with this ID will say yes or no by random choice

overHighestAllowedLayer 

OverHighestAllowedLayer Filter.

outOfSectorRange 

out of sector range filter

numFilters 

knows number of filters existing.

If a member returns this value, the input-value was wrong

Definition at line 31 of file FilterID.h.

31 {
32 // 2hit:
33 distance3D,
34 distanceXY,
35 distanceZ,
36 slopeRZ,
37 normedDistance3D,
38
39
40 //2+1hit:
41 anglesHighOccupancy3D,
42 anglesHighOccupancyXY,
43 anglesHighOccupancyRZ,
44 distanceHighOccupancy2IP,
45 deltaSlopeHighOccupancyRZ,
46 pTHighOccupancy,
47 helixParameterHighOccupancyFit,
48
49
50 //3hit:
51 angles3D,
52 anglesRZ,
53 anglesXY,
54 deltaSlopeRZ,
55 pT,
56 distance2IP,
57 helixParameterFit,
58 deltaSOverZ,
59 deltaSlopeZOverS,
60
61
62 //3+1hit:
63 deltapTHighOccupancy,
64 deltaDistanceHighOccupancy2IP,
65
66
67 //4hit:
68 deltapT,
69 deltaDistance2IP,
70
71
72 //Collector FilterIDs
73 nbFinderLost,
74 cellularAutomaton,
75
76
77 // trackletFilters:
78 ziggZaggXY,
79 ziggZaggXYWithSigma,
80 ziggZaggRZ,
81 circlefit,
82 helixfit,
83 simpleLineFit3D,
84
85
86 //TF-steps:
87 hopfield,
88 greedy,
89 tcDuel,
90 tcFinderCurr,
91 calcQIbyKalman,
92 overlapping,
93
94
95 // for display: silent kills
96 silentTcc,
97 silentHitFinder,
98 silentSegFinder,
99
100
101 // tests which are only for debugging and validation processes
102 alwaysTrue2Hit,
103 alwaysFalse2Hit,
104 alwaysTrue3Hit,
105 alwaysFalse3Hit,
106 alwaysTrue4Hit,
107 alwaysFalse4Hit,
108 random2Hit,
109 random3Hit,
110 random4Hit,
111
112
113 // other stuff
114 overHighestAllowedLayer,
115 outOfSectorRange,
116
117
118 numFilters
119
120 };

Constructor & Destructor Documentation

◆ FilterID()

FilterID ( )
inline

Constructor.

Definition at line 219 of file FilterID.h.

219{}

◆ ~FilterID()

~FilterID ( )
inline

Destructor.

Definition at line 222 of file FilterID.h.

222{}

Member Function Documentation

◆ getFilterString() [1/2]

static std::string getFilterString ( filterTypes filterType)
inlinestatic

converts existing enum value into suitable string with name of filter type.

Definition at line 231 of file FilterID.h.

231{ return getTypeName(filterType); }

◆ getFilterString() [2/2]

std::string getFilterString ( int filterType)
static

converts int value into suitable string with name of filter type (if int value is equal to values of enum).

Definition at line 423 of file FilterID.cc.

424{
425 if (filterType >= distance3D && filterType < numFilters) {
426 return nameVector[filterType];
427 }
428 B2WARNING(" FilterID::getFilterString. Input int is out of range, please check that...");
429 return "";
430}
static const boost::array< std::string, numFilters > nameVector
array storing all the strings where the enums can be used to access their position
Definition FilterID.h:213
@ numFilters
knows number of filters existing.
Definition FilterID.h:118
@ distance3D
string name of filter d3D
Definition FilterID.h:33

◆ getFilterType() [1/2]

FilterID::filterTypes getFilterType ( const std::string & filterString)
static

converts existing string with name of filter type into suitable enum value.

Definition at line 287 of file FilterID.cc.

288{
289 // WARNING TODO FIXME: improve that function (by the way, it is not sorted like the entries from above)
290 if (filterString == nameAngles3D)
291 { return angles3D; }
292 else if (filterString == nameAnglesRZ)
293 {return anglesRZ;}
294 else if (filterString == nameAnglesXY)
295 {return anglesXY;}
296 else if (filterString == nameDistance3D)
297 {return distance3D;}
298 else if (filterString == nameDistanceXY)
299 {return distanceXY;}
300 else if (filterString == nameDistanceZ)
301 {return distanceZ;}
302 else if (filterString == nameHelixParameterFit)
303 {return helixParameterFit;}
304 else if (filterString == nameDeltaSOverZ)
305 {return deltaSOverZ;}
306 else if (filterString == nameDeltaSlopeZOverS)
307 {return deltaSlopeZOverS;}
308 else if (filterString == nameSlopeRZ)
309 {return slopeRZ;}
310 else if (filterString == nameDeltaSlopeRZ)
311 {return deltaSlopeRZ;}
312 else if (filterString == namePT)
313 {return pT;}
314 else if (filterString == nameDeltapT)
315 {return deltapT;}
316 else if (filterString == nameNormedDistance3D)
317 {return normedDistance3D;}
318 else if (filterString == nameDistance2IP)
319 {return distance2IP;}
320 else if (filterString == nameDeltaDistance2IP)
321 {return deltaDistance2IP;}
322 else if (filterString == nameAnglesHighOccupancy3D)
323 {return anglesHighOccupancy3D;}
324 else if (filterString == nameAnglesHighOccupancyXY)
325 {return anglesHighOccupancyXY;}
326 else if (filterString == nameAnglesHighOccupancyRZ)
327 {return anglesHighOccupancyRZ;}
328 else if (filterString == nameDistanceHighOccupancy2IP)
330 else if (filterString == nameDeltaSlopeHighOccupancyRZ)
332 else if (filterString == namePTHighOccupancy)
333 {return pTHighOccupancy;}
334 else if (filterString == nameHelixParameterHighOccupancyFit)
336 else if (filterString == nameDeltapTHighOccupancy)
337 {return deltapTHighOccupancy;}
338 else if (filterString == nameDeltaDistanceHighOccupancy2IP)
340 else if (filterString == nameNbFinderLost)
341 {return nbFinderLost;}
342 else if (filterString == nameCellularAutomaton)
343 {return cellularAutomaton;}
344
345 else if (filterString == nameHopfield)
346 {return hopfield;}
347 else if (filterString == nameGreedy)
348 {return greedy;}
349
350 else if (filterString == nameTcDuel)
351 {return tcDuel;}
352 else if (filterString == nameTcFinderCurr)
353 {return tcFinderCurr;}
354
355 else if (filterString == nameZiggZaggXY)
356 {return ziggZaggXY;}
357 else if (filterString == nameZiggZaggXYWithSigma)
358 {return ziggZaggXYWithSigma;}
359 else if (filterString == nameZiggZaggRZ)
360 {return ziggZaggRZ;}
361
362 else if (filterString == nameCalcQIbyKalman)
363 {return calcQIbyKalman;}
364 else if (filterString == nameOverlapping)
365 {return overlapping;}
366 else if (filterString == nameCirclefit)
367 {return circlefit;}
368 else if (filterString == nameHelixfit)
369 {return helixfit;}
370 else if (filterString == nameSimpleLineFit3D)
371 {return simpleLineFit3D;}
372
373 else if (filterString == nameSilentTcc)
374 {return silentTcc;}
375 else if (filterString == nameSilentHitFinder)
376 {return silentHitFinder;}
377 else if (filterString == nameSilentSegFinder)
378 {return silentSegFinder;}
379
380 else if (filterString == nameAlwaysTrue2Hit)
381 {return alwaysTrue2Hit;}
382 else if (filterString == nameAlwaysFalse2Hit)
383 {return alwaysFalse2Hit;}
384 else if (filterString == nameAlwaysTrue3Hit)
385 {return alwaysTrue3Hit;}
386 else if (filterString == nameAlwaysFalse3Hit)
387 {return alwaysFalse3Hit;}
388 else if (filterString == nameAlwaysTrue4Hit)
389 {return alwaysTrue4Hit;}
390 else if (filterString == nameAlwaysFalse4Hit)
391 {return alwaysFalse4Hit;}
392 else if (filterString == nameRandom2Hit)
393 {return random2Hit;}
394 else if (filterString == nameRandom3Hit)
395 {return random3Hit;}
396 else if (filterString == nameRandom4Hit)
397 {return random4Hit;}
398
399 else if (filterString == nameOverHighestAllowedLayer)
401 else if (filterString == nameOutOfSectorRange)
402 {return outOfSectorRange;}
403
404 else {
405 B2WARNING(" FilterID::getFilterType. Input std::string is out of range, please check that...");
406 return numFilters;
407 }
408}
static const std::string nameOverHighestAllowedLayer
string name of OverHighestAllowedLayer Filter
Definition FilterID.h:207
static const std::string nameZiggZaggXY
string name ZiggZaggXY filter
Definition FilterID.h:170
static const std::string nameDeltaSOverZ
string name deltaSOverZ Filter
Definition FilterID.h:150
static const std::string namePT
string name of filter pT
Definition FilterID.h:147
static const std::string nameDeltaDistanceHighOccupancy2IP
string name of filter dd2IP high occupancy
Definition FilterID.h:156
static const std::string nameNormedDistance3D
string name of filter nd3D
Definition FilterID.h:129
static const std::string nameDeltaSlopeHighOccupancyRZ
string name of filter dslopeRZ high occupancy
Definition FilterID.h:137
static const std::string nameAlwaysTrue4Hit
string name of a filter which will always say yes
Definition FilterID.h:199
static const std::string nameHopfield
string name Hopfield filter
Definition FilterID.h:179
static const std::string nameDistance3D
string name of filter d3D
Definition FilterID.h:125
static const std::string nameAlwaysFalse2Hit
string name of a filter which will always say no
Definition FilterID.h:196
static const std::string nameNbFinderLost
string name Nb Finder filter
Definition FilterID.h:165
static const std::string nameAnglesRZ
string name of filter aRZ
Definition FilterID.h:144
static const std::string nameSilentTcc
WARNING FIXME TODO some things are missing here (calcQIbyLineFit) and similar stuff.
Definition FilterID.h:189
static const std::string nameCirclefit
string name Circlefit filter
Definition FilterID.h:173
static const std::string nameOverlapping
string name Overlapping filter
Definition FilterID.h:184
static const std::string nameDeltaSlopeZOverS
string name deltaSlopeZOverS Filter
Definition FilterID.h:151
static const std::string nameTcFinderCurr
string name TC Finder Curr filter
Definition FilterID.h:182
static const std::string nameCalcQIbyKalman
string name CalcQIbyKalman filter
Definition FilterID.h:183
static const std::string nameSimpleLineFit3D
string name SimpleLineFit3D filter
Definition FilterID.h:175
static const std::string nameAnglesXY
string name of filter aXY
Definition FilterID.h:145
static const std::string nameDeltapTHighOccupancy
string name of filter dPt high occupancy
Definition FilterID.h:155
static const std::string nameDistanceHighOccupancy2IP
string name of filter d2IP high occupancy
Definition FilterID.h:136
static const std::string nameDeltapT
string name of filter dPt
Definition FilterID.h:160
static const std::string nameRandom2Hit
string name of a filter which will say yes or no by random choice
Definition FilterID.h:201
static const std::string nameDistance2IP
string name of filter d2IP
Definition FilterID.h:148
static const std::string nameHelixfit
string name Helix Fit filter
Definition FilterID.h:174
static const std::string nameAnglesHighOccupancyXY
string name of filter aXY high occupancy
Definition FilterID.h:134
static const std::string nameAnglesHighOccupancyRZ
string name of filter aRZ high occupancy
Definition FilterID.h:135
static const std::string nameRandom4Hit
string name of a filter which will say yes or no by random choice
Definition FilterID.h:203
static const std::string nameAngles3D
string name of filter a3D
Definition FilterID.h:143
static const std::string nameZiggZaggXYWithSigma
string name ZiggZaggXYWithSigma filter
Definition FilterID.h:171
static const std::string nameDeltaDistance2IP
string name of filter dd2IP
Definition FilterID.h:161
static const std::string nameHelixParameterHighOccupancyFit
string name of filter hFit high occupancy
Definition FilterID.h:139
static const std::string nameZiggZaggRZ
string name ZiggZaggRZ filter
Definition FilterID.h:172
static const std::string nameAlwaysTrue2Hit
string name of a filter which will always say yes
Definition FilterID.h:195
static const std::string nameOutOfSectorRange
string name out of sector range filter
Definition FilterID.h:208
static const std::string nameAnglesHighOccupancy3D
string name of filter a3D high occupancy
Definition FilterID.h:133
static const std::string nameSlopeRZ
string name of filter slopeRZ
Definition FilterID.h:128
static const std::string nameDeltaSlopeRZ
string name of filter dslopeRZ
Definition FilterID.h:146
static const std::string nameDistanceZ
string name of filter dZ
Definition FilterID.h:127
static const std::string nameSilentHitFinder
string name Silent Kill Hit Finder filter
Definition FilterID.h:190
static const std::string nameCellularAutomaton
string name CA filter
Definition FilterID.h:166
static const std::string nameSilentSegFinder
string name Silent Kill Seg Finder filter
Definition FilterID.h:191
static const std::string nameGreedy
string name Greedy filter
Definition FilterID.h:180
static const std::string nameAlwaysFalse3Hit
string name of a filter which will always say no
Definition FilterID.h:198
static const std::string nameDistanceXY
string name of filter dXY
Definition FilterID.h:126
static const std::string nameHelixParameterFit
string name of filter helix Parameter Fit
Definition FilterID.h:149
static const std::string nameAlwaysTrue3Hit
string name of a filter which will always say yes
Definition FilterID.h:197
@ random3Hit
a filter with this ID will say yes or no by random choice
Definition FilterID.h:109
@ hopfield
Hopfield filter.
Definition FilterID.h:87
@ silentTcc
Silent Kill TCC filter.
Definition FilterID.h:96
@ nbFinderLost
Nb Finder filter.
Definition FilterID.h:73
@ alwaysTrue2Hit
a filter with this ID will always say True
Definition FilterID.h:102
@ distanceHighOccupancy2IP
string name of filter d2IP high occupancy
Definition FilterID.h:44
@ alwaysFalse3Hit
a filter with this ID will always say False
Definition FilterID.h:105
@ deltaDistance2IP
string name of filter dd2IP
Definition FilterID.h:69
@ distance2IP
string name of filter d2IP
Definition FilterID.h:56
@ deltaSlopeHighOccupancyRZ
string name of filter dslopeRZ high occupancy
Definition FilterID.h:45
@ helixfit
Helix Fit filter.
Definition FilterID.h:82
@ tcDuel
TC Duel filter.
Definition FilterID.h:89
@ overlapping
overlapping filter
Definition FilterID.h:92
@ anglesHighOccupancy3D
string name of filter a3D high occupancy
Definition FilterID.h:41
@ random4Hit
a filter with this ID will say yes or no by random choice
Definition FilterID.h:110
@ simpleLineFit3D
simpleLineFit3D filter
Definition FilterID.h:83
@ deltapT
string name of filter dPt
Definition FilterID.h:68
@ overHighestAllowedLayer
OverHighestAllowedLayer Filter.
Definition FilterID.h:114
@ cellularAutomaton
CA filter.
Definition FilterID.h:74
@ distanceXY
string name of filter dXY
Definition FilterID.h:34
@ anglesXY
string name of filter aXY
Definition FilterID.h:53
@ tcFinderCurr
TC Finder Curr filter.
Definition FilterID.h:90
@ silentSegFinder
Silent Kill SefFinder filter.
Definition FilterID.h:98
@ normedDistance3D
string name of filter nd3D
Definition FilterID.h:37
@ slopeRZ
string name of filter slopeRZ
Definition FilterID.h:36
@ circlefit
circlefit filter
Definition FilterID.h:81
@ silentHitFinder
Silent Kill HitFinder filter.
Definition FilterID.h:97
@ outOfSectorRange
out of sector range filter
Definition FilterID.h:115
@ ziggZaggRZ
ziggZaggRZ filter
Definition FilterID.h:80
@ anglesHighOccupancyXY
string name of filter aXY high occupancy
Definition FilterID.h:42
@ helixParameterFit
string name of filter helix Parameter Fit
Definition FilterID.h:57
@ alwaysTrue3Hit
a filter with this ID will always say True
Definition FilterID.h:104
@ alwaysFalse2Hit
a filter with this ID will always say False
Definition FilterID.h:103
@ deltaSlopeRZ
string name of filter dslopeRZ
Definition FilterID.h:54
@ ziggZaggXY
ziggZaggXY filter
Definition FilterID.h:78
@ alwaysFalse4Hit
a filter with this ID will always say False
Definition FilterID.h:107
@ deltaDistanceHighOccupancy2IP
string name of filter dd2IP high occupancy
Definition FilterID.h:64
@ helixParameterHighOccupancyFit
string name of filter hFit high occupancy
Definition FilterID.h:47
@ ziggZaggXYWithSigma
ziggZaggXYWithSigma filter
Definition FilterID.h:79
@ deltapTHighOccupancy
string name of filter dPt high occupancy
Definition FilterID.h:63
@ alwaysTrue4Hit
a filter with this ID will always say True
Definition FilterID.h:106
@ greedy
Greedy filter.
Definition FilterID.h:88
@ pTHighOccupancy
string name of filter pT high occupancy
Definition FilterID.h:46
@ random2Hit
a filter with this ID will say yes or no by random choice
Definition FilterID.h:108
@ angles3D
string name of filter a3D
Definition FilterID.h:51
@ anglesRZ
string name of filter aRZ
Definition FilterID.h:52
@ deltaSlopeZOverS
deltaSlopeZOverS Filter
Definition FilterID.h:59
@ distanceZ
string name of filter dZ
Definition FilterID.h:35
@ deltaSOverZ
deltaSOverZ Filter
Definition FilterID.h:58
@ pT
string name of filter pT
Definition FilterID.h:55
@ calcQIbyKalman
calcQIbyKalman filter
Definition FilterID.h:91
@ anglesHighOccupancyRZ
string name of filter aRZ high occupancy
Definition FilterID.h:43
static const std::string nameRandom3Hit
string name of a filter which will say yes or no by random choice
Definition FilterID.h:202
static const std::string nameAlwaysFalse4Hit
string name of a filter which will always say no
Definition FilterID.h:200
static const std::string namePTHighOccupancy
string name of filter pT high occupancy
Definition FilterID.h:138
static const std::string nameTcDuel
string name TC Duel filter
Definition FilterID.h:181

◆ getFilterType() [2/2]

FilterID::filterTypes getFilterType ( int filterInt)
static

converts existing int with filter type-compativble value into suitable enum value.

Definition at line 412 of file FilterID.cc.

413{
414 if (filterInt >= distance3D && filterInt < numFilters) {
415 return enumVector[filterInt];
416 }
417 B2WARNING(" FilterID::getFilterType. Input int is out of range, please check that...");
418 return numFilters;
419}
static const boost::array< FilterID::filterTypes, FilterID::numFilters > enumVector
array storing all the enums where ints can be used to access their position (this is needed since enu...
Definition FilterID.h:216

◆ getTypeEnum()

static filterTypes getTypeEnum ( const std::string & filterString)
inlinestatic

returns type of given name, needed for compatibility with other modules.

Definition at line 240 of file FilterID.h.

240{return getFilterType(filterString); }

◆ getTypeName()

std::string getTypeName ( FilterID::filterTypes type)
static

returns name of given type, needed for compatibility with other modules

for given FilterID the corresponding std::string-name will be returned.

For invalid types, UnknownType will be passed

TODO

Definition at line 434 of file FilterID.cc.

435{
437 auto pos = std::find(enumVector.begin(), enumVector.end(), type);
438 if (pos == enumVector.end()) {
439 B2WARNING("FilterID::getTypeName(): given iD " << type <<
440 " is not a valid FilterID, return UnknownType!");
441 return std::string("UnknownType");
442 }
443 return FilterID::nameVector[type];
444}

Member Data Documentation

◆ enumVector

const boost::array< FilterID::filterTypes, FilterID::numFilters > enumVector
static

array storing all the enums where ints can be used to access their position (this is needed since enums can be converted to int but not otherwise)

Definition at line 216 of file FilterID.h.

◆ nameAlwaysFalse2Hit

const std::string nameAlwaysFalse2Hit = "alwaysFalse2Hit"
static

string name of a filter which will always say no

Definition at line 196 of file FilterID.h.

◆ nameAlwaysFalse3Hit

const std::string nameAlwaysFalse3Hit = "alwaysFalse3Hit"
static

string name of a filter which will always say no

Definition at line 198 of file FilterID.h.

◆ nameAlwaysFalse4Hit

const std::string nameAlwaysFalse4Hit = "alwaysFalse4Hit"
static

string name of a filter which will always say no

Definition at line 200 of file FilterID.h.

◆ nameAlwaysTrue2Hit

const std::string nameAlwaysTrue2Hit = "alwaysTrue2Hit"
static

string name of a filter which will always say yes

Definition at line 195 of file FilterID.h.

◆ nameAlwaysTrue3Hit

const std::string nameAlwaysTrue3Hit = "alwaysTrue3Hit"
static

string name of a filter which will always say yes

Definition at line 197 of file FilterID.h.

◆ nameAlwaysTrue4Hit

const std::string nameAlwaysTrue4Hit = "alwaysTrue4Hit"
static

string name of a filter which will always say yes

Definition at line 199 of file FilterID.h.

◆ nameAngles3D

const std::string nameAngles3D = "angles3D"
static

string name of filter a3D

Definition at line 143 of file FilterID.h.

◆ nameAnglesHighOccupancy3D

const std::string nameAnglesHighOccupancy3D = "HioCangles3D"
static

string name of filter a3D high occupancy

Definition at line 133 of file FilterID.h.

◆ nameAnglesHighOccupancyRZ

const std::string nameAnglesHighOccupancyRZ = "HioCanglesRZ"
static

string name of filter aRZ high occupancy

Definition at line 135 of file FilterID.h.

◆ nameAnglesHighOccupancyXY

const std::string nameAnglesHighOccupancyXY = "HioCanglesXY"
static

string name of filter aXY high occupancy

Definition at line 134 of file FilterID.h.

◆ nameAnglesRZ

const std::string nameAnglesRZ = "anglesRZ"
static

string name of filter aRZ

Definition at line 144 of file FilterID.h.

◆ nameAnglesXY

const std::string nameAnglesXY = "anglesXY"
static

string name of filter aXY

Definition at line 145 of file FilterID.h.

◆ nameCalcQIbyKalman

const std::string nameCalcQIbyKalman = "CalcQIbyKalman"
static

string name CalcQIbyKalman filter

Definition at line 183 of file FilterID.h.

◆ nameCellularAutomaton

const std::string nameCellularAutomaton = "CellularAutomaton"
static

string name CA filter

Definition at line 166 of file FilterID.h.

◆ nameCirclefit

const std::string nameCirclefit = "Circlefit"
static

string name Circlefit filter

Definition at line 173 of file FilterID.h.

◆ nameDeltaDistance2IP

const std::string nameDeltaDistance2IP = "deltaDistance2IP"
static

string name of filter dd2IP

Definition at line 161 of file FilterID.h.

◆ nameDeltaDistanceHighOccupancy2IP

const std::string nameDeltaDistanceHighOccupancy2IP = "HioCdeltaDistance2IP"
static

string name of filter dd2IP high occupancy

Definition at line 156 of file FilterID.h.

◆ nameDeltapT

const std::string nameDeltapT = "deltaPt"
static

string name of filter dPt

Definition at line 160 of file FilterID.h.

◆ nameDeltapTHighOccupancy

const std::string nameDeltapTHighOccupancy = "HioCdeltaPt"
static

string name of filter dPt high occupancy

Definition at line 155 of file FilterID.h.

◆ nameDeltaSlopeHighOccupancyRZ

const std::string nameDeltaSlopeHighOccupancyRZ = "HioCdeltaSlopeRZ"
static

string name of filter dslopeRZ high occupancy

Definition at line 137 of file FilterID.h.

◆ nameDeltaSlopeRZ

const std::string nameDeltaSlopeRZ = "deltaSlopeRZ"
static

string name of filter dslopeRZ

Definition at line 146 of file FilterID.h.

◆ nameDeltaSlopeZOverS

const std::string nameDeltaSlopeZOverS = "deltaSlopeZOverS"
static

string name deltaSlopeZOverS Filter

Definition at line 151 of file FilterID.h.

◆ nameDeltaSOverZ

const std::string nameDeltaSOverZ = "deltaSOverZ"
static

string name deltaSOverZ Filter

Definition at line 150 of file FilterID.h.

◆ nameDistance2IP

const std::string nameDistance2IP = "distance2IP"
static

string name of filter d2IP

Definition at line 148 of file FilterID.h.

◆ nameDistance3D

const std::string nameDistance3D = "distance3D"
static

string name of filter d3D

Definition at line 125 of file FilterID.h.

◆ nameDistanceHighOccupancy2IP

const std::string nameDistanceHighOccupancy2IP = "HioCdistance2IP"
static

string name of filter d2IP high occupancy

Definition at line 136 of file FilterID.h.

◆ nameDistanceXY

const std::string nameDistanceXY = "distanceXY"
static

string name of filter dXY

Definition at line 126 of file FilterID.h.

◆ nameDistanceZ

const std::string nameDistanceZ = "distanceZ"
static

string name of filter dZ

Definition at line 127 of file FilterID.h.

◆ nameGreedy

const std::string nameGreedy = "Greedy"
static

string name Greedy filter

Definition at line 180 of file FilterID.h.

◆ nameHelixfit

const std::string nameHelixfit = "Helixfit"
static

string name Helix Fit filter

Definition at line 174 of file FilterID.h.

◆ nameHelixParameterFit

const std::string nameHelixParameterFit = "helixParameterFit"
static

string name of filter helix Parameter Fit

Definition at line 149 of file FilterID.h.

◆ nameHelixParameterHighOccupancyFit

const std::string nameHelixParameterHighOccupancyFit = "HioChelixFit"
static

string name of filter hFit high occupancy

Definition at line 139 of file FilterID.h.

◆ nameHopfield

const std::string nameHopfield = "Hopfield"
static

string name Hopfield filter

Definition at line 179 of file FilterID.h.

◆ nameNbFinderLost

const std::string nameNbFinderLost = "NbFinderLost"
static

string name Nb Finder filter

Definition at line 165 of file FilterID.h.

◆ nameNormedDistance3D

const std::string nameNormedDistance3D = "normedDistance3D"
static

string name of filter nd3D

Definition at line 129 of file FilterID.h.

◆ nameOutOfSectorRange

const std::string nameOutOfSectorRange = "outOfSectorRange"
static

string name out of sector range filter

Definition at line 208 of file FilterID.h.

◆ nameOverHighestAllowedLayer

const std::string nameOverHighestAllowedLayer = "overHighestAllowedLayer"
static

string name of OverHighestAllowedLayer Filter

Definition at line 207 of file FilterID.h.

◆ nameOverlapping

const std::string nameOverlapping = "Overlapping"
static

string name Overlapping filter

Definition at line 184 of file FilterID.h.

◆ namePT

const std::string namePT = "pT"
static

string name of filter pT

Definition at line 147 of file FilterID.h.

◆ namePTHighOccupancy

const std::string namePTHighOccupancy = "HioCpT"
static

string name of filter pT high occupancy

Definition at line 138 of file FilterID.h.

◆ nameRandom2Hit

const std::string nameRandom2Hit = "random2Hit"
static

string name of a filter which will say yes or no by random choice

Definition at line 201 of file FilterID.h.

◆ nameRandom3Hit

const std::string nameRandom3Hit = "random3Hit"
static

string name of a filter which will say yes or no by random choice

Definition at line 202 of file FilterID.h.

◆ nameRandom4Hit

const std::string nameRandom4Hit = "random4Hit"
static

string name of a filter which will say yes or no by random choice

Definition at line 203 of file FilterID.h.

◆ nameSilentHitFinder

const std::string nameSilentHitFinder = "SilentHitFinder"
static

string name Silent Kill Hit Finder filter

Definition at line 190 of file FilterID.h.

◆ nameSilentSegFinder

const std::string nameSilentSegFinder = "SilentSegFinder"
static

string name Silent Kill Seg Finder filter

Definition at line 191 of file FilterID.h.

◆ nameSilentTcc

const std::string nameSilentTcc = "SilentTcc"
static

WARNING FIXME TODO some things are missing here (calcQIbyLineFit) and similar stuff.

string name Silent Kill TCC filter

Definition at line 189 of file FilterID.h.

◆ nameSimpleLineFit3D

const std::string nameSimpleLineFit3D = "SimpleLineFit3D"
static

string name SimpleLineFit3D filter

Definition at line 175 of file FilterID.h.

◆ nameSlopeRZ

const std::string nameSlopeRZ = "slopeRZ"
static

string name of filter slopeRZ

Definition at line 128 of file FilterID.h.

◆ nameTcDuel

const std::string nameTcDuel = "TcDuel"
static

string name TC Duel filter

Definition at line 181 of file FilterID.h.

◆ nameTcFinderCurr

const std::string nameTcFinderCurr = "TcFinderCurr"
static

string name TC Finder Curr filter

Definition at line 182 of file FilterID.h.

◆ nameVector

const boost::array< std::string, FilterID::numFilters > nameVector
static

array storing all the strings where the enums can be used to access their position

Definition at line 213 of file FilterID.h.

◆ nameZiggZaggRZ

const std::string nameZiggZaggRZ = "ZiggZaggRZ"
static

string name ZiggZaggRZ filter

Definition at line 172 of file FilterID.h.

◆ nameZiggZaggXY

const std::string nameZiggZaggXY = "ZiggZaggXY"
static

string name ZiggZaggXY filter

Definition at line 170 of file FilterID.h.

◆ nameZiggZaggXYWithSigma

const std::string nameZiggZaggXYWithSigma = "ZiggZaggXYWithSigma"
static

string name ZiggZaggXYWithSigma filter

Definition at line 171 of file FilterID.h.


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