Belle II Software  release-05-02-19
FilterID Class Reference

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

#include <FilterID.h>

Collaboration diagram for FilterID:

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 More...
 
static filterTypes getTypeEnum (const std::string &filterString)
 returns type of given name, needed for compatibility with other modules.
 

Static Public Attributes

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

Member Function Documentation

◆ getTypeName()

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

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

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

For invalid types, UnknownType will be passed

TODO

Definition at line 437 of file FilterID.cc.

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

Member Data Documentation

◆ nameSilentTcc

const 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 199 of file FilterID.h.


The documentation for this class was generated from the following files:
Belle2::FilterID::nameVector
const static boost::array< std::string, numFilters > nameVector
array storing all the strings where the enums can be used to access their position
Definition: FilterID.h:223
Belle2::FilterID::enumVector
const static 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:226