1 #ifndef MuonIsolation_Range_H
2 #define MuonIsolation_Range_H
12 namespace muonisolation {
14 template<
class T>
class Range :
public std::pair<T,T> {
19 Range(
const T & aMin,
const T & aMax) : std::pair<
T,
T> (aMin,aMax) { }
21 Range(
const std::pair<T,T> & aPair ) : std::pair<
T,
T> (aPair) { }
29 bool empty()
const {
return (this->second < this->
first); }
32 if (value < this->
first || this->
second < value)
return false;
else return true;
40 template <
class T> std::ostream & operator<<( std::ostream& out, const muonisolation::Range<T>&
r)
41 {
return out <<
"("<<
r.min()<<
","<<
r.max()<<
")"; }
U second(std::pair< T, U > const &p)
Range(const T &aMin, const T &aMax)
void swap(edm::DataFrameContainer &lhs, edm::DataFrameContainer &rhs)
Range(const std::pair< T, T > &aPair)
bool inside(const T &value) const