Belle II Software  release-08-01-10
SelectionVariable< templateArgumentType, Nargs, templateReturnType > Class Template Reference

Base class of the selection variable objects used for pair filtering. More...

#include <SelectionVariable.h>

Classes

struct  FunctionOf
 this struct is an internal utility. More...
 
struct  FunctionOf< 0, returnType, parameterType, Ts... >
 this struct is an internal utility. More...
 

Public Types

typedef templateReturnType variableType
 Type of the returned object. More...
 
typedef templateArgumentType argumentType
 Type of the argument object. More...
 
typedef FunctionOf< Nargs, variableType, const argumentType & >::functionType functionType
 Type of the function returning the value. More...
 

Public Member Functions

virtual ~SelectionVariable ()
 A bogus virtual denstructor.
 
 SelectionVariable ()
 A bogus constructor.
 

Static Public Member Functions

static variableType value (const templateArgumentType &arg1, const templateArgumentType &arg2)
 Static method that return the variable associated to: More...
 

Static Public Attributes

static const size_t c_Nargs = Nargs
 Number of arguments.
 

Detailed Description

template<class templateArgumentType, size_t Nargs, class templateReturnType = double>
class Belle2::SelectionVariable< templateArgumentType, Nargs, templateReturnType >

Base class of the selection variable objects used for pair filtering.

The filter tools are meant to select in a very flexible and efficient manner pairs of objects of type templateArgumentType. The selection decision is taken on the base of some selection variables. The arguments of the selection functions are two objects of type templateArgumentType. The selection function returns a templateReturnType which by default is a double. E.g.: To code a selection function returning the sum of two integers

#include "tracking/trackFindingVXD/filterTools/SelectionVariable.hh"
//...
class Difference: public SelectionVariable< int, int >
{
static int
value( const int & arg1, const int & arg2 ){
return arg1 + arg2;
};
Difference() {};
~Difference() {};
};
SelectionVariable()
A bogus constructor.
static variableType value(const templateArgumentType &arg1, const templateArgumentType &arg2)
Static method that return the variable associated to:

Definition at line 52 of file SelectionVariable.h.

Member Typedef Documentation

◆ argumentType

typedef templateArgumentType argumentType

Type of the argument object.

Needed for SFINAE in Filter.hh

Definition at line 84 of file SelectionVariable.h.

◆ functionType

Type of the function returning the value.

Needed for the automated training

Definition at line 88 of file SelectionVariable.h.

◆ variableType

typedef templateReturnType variableType

Type of the returned object.

Needed for SFINAE in Filter.hh

Definition at line 81 of file SelectionVariable.h.

Member Function Documentation

◆ value()

static variableType value ( const templateArgumentType &  arg1,
const templateArgumentType &  arg2 
)
inlinestatic

Static method that return the variable associated to:

Parameters
arg1first object of the pair
arg2second object of the pair

N.B. this method must be static.


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