Represents a closed set of arithmetic types.
More...
#include <ClosedRange.h>
|
| ClosedRange (MinType min, MaxType max) |
| Constructor.
|
|
template<class VariableType> |
bool | contains (const VariableType &x) const |
| Method used by the filter tools to decide if accept a combination.
|
|
void | persist (TTree *t, const std::string &branchName, const std::string &variableName) |
| Creates and sets the addresses of the leaves to store the min and max values.
|
|
void | setBranchAddress (TTree *t, const std::string &branchName, const std::string &) |
| sets branch addresses of the given tree to the m_min and m_msx.
|
|
MinType | getInf (void) const |
| Accessor to the inf of the set (which is also the min)
|
|
MaxType | getSup (void) const |
| Accessor to the sup of the set (which is alsto the max)
|
|
std::string | getNameAndReference (std::vector< std::pair< char, void * > > *pointers=nullptr, const std::string &varname="X") |
| generates a "name" and fills the vector with the variable references
|
|
|
MinType | m_min |
| the minimum of this range
|
|
MaxType | m_max |
| the maximum of this range
|
|
template<typename MinType, typename MaxType>
class Belle2::ClosedRange< MinType, MaxType >
Represents a closed set of arithmetic types.
Range is used in conjunction with the SelectionVariable to define one of the building blocks of the Filters
Definition at line 32 of file ClosedRange.h.
◆ ClosedRange() [1/2]
template<typename MinType, typename MaxType>
Constructor.
Definition at line 36 of file ClosedRange.h.
36: m_min(min), m_max(max) {};
◆ ClosedRange() [2/2]
template<typename MinType, typename MaxType>
◆ contains()
template<typename MinType, typename MaxType>
template<class VariableType>
bool contains |
( |
const VariableType & | x | ) |
const |
|
inline |
Method used by the filter tools to decide if accept a combination.
- Parameters
-
x | is the result of some SelectionVariable It returns true if x belongs to the closed set [ m_min, m_max ] It does not throw. |
Definition at line 46 of file ClosedRange.h.
46{ return m_min <= x && x <= m_max ;};
◆ getInf()
template<typename MinType, typename MaxType>
MinType getInf |
( |
void | | ) |
const |
|
inline |
Accessor to the inf of the set (which is also the min)
Definition at line 84 of file ClosedRange.h.
◆ getNameAndReference()
template<typename MinType, typename MaxType>
std::string getNameAndReference |
( |
std::vector< std::pair< char, void * > > * | pointers = nullptr, |
|
|
const std::string & | varname = "X" ) |
|
inline |
generates a "name" and fills the vector with the variable references
- Parameters
-
varname | pointer to vector which contains a pair of char which indicates the type object pointed to and the actual pointers to the bounds, if equal to nullptr it will not be filled |
pointers | optional name of the filter this range is attached to make the output look nicer |
Definition at line 95 of file ClosedRange.h.
97 {
98 std::string minVal = std::to_string(m_min);
99 std::string maxVal = std::to_string(m_max);
100
101 if (pointers != nullptr) {
102
103 minVal = "#" + std::to_string(pointers->size());
105 maxVal = "#" + std::to_string(pointers->size());
107 }
108 return ("(" + minVal + " <= " + varname + " <= " + maxVal + ")");
109 }
char TBranchLeafType(const char *)
Overloading TBranchLeafType to be able to get identifier 'C' for type char*.
◆ getSup()
template<typename MinType, typename MaxType>
MaxType getSup |
( |
void | | ) |
const |
|
inline |
Accessor to the sup of the set (which is alsto the max)
Definition at line 87 of file ClosedRange.h.
◆ persist()
template<typename MinType, typename MaxType>
void persist |
( |
TTree * | t, |
|
|
const std::string & | branchName, |
|
|
const std::string & | variableName ) |
|
inline |
Creates and sets the addresses of the leaves to store the min and max values.
- Parameters
-
t | the pointer to the TTree that will contain the TBranch of this range. |
branchName | the name of the TBranch that will host this range. |
variableName | the name of the selection variable this range is applied to. |
The leaves will be named as the selection variable name with the "_min"/"_max" suffixes for the min/max value.
Definition at line 57 of file ClosedRange.h.
58 {
59
60 std::string leafList;
61 leafList += variableName;
62 leafList += "_min/";
64 leafList += ":";
65 leafList += variableName;
66 leafList += "_max/";
68 TBranch* branch = new TBranch(t, branchName.c_str(), & m_min, leafList.c_str());
69 t->GetListOfBranches()->Add(branch);
70 }
◆ setBranchAddress()
template<typename MinType, typename MaxType>
void setBranchAddress |
( |
TTree * | t, |
|
|
const std::string & | branchName, |
|
|
const std::string & | ) |
|
inline |
sets branch addresses of the given tree to the m_min and m_msx.
Note: it assumes a certain ordering
- Parameters
-
t | the tree of the which the branch addresses need to be set |
branchName | name of the branch |
Definition at line 76 of file ClosedRange.h.
78 {
79
80 if (t->SetBranchAddress(branchName.c_str(), & m_min) < 0) B2FATAL("ClosedRange: branch address not valid");
81 }
◆ m_max
template<typename MinType, typename MaxType>
◆ m_min
template<typename MinType, typename MaxType>
The documentation for this class was generated from the following file:
- tracking/trackFindingVXD/filterMap/filterFramework/include/ClosedRange.h