|
ATLAS Offline Software
|
Go to the documentation of this file.
17 #ifndef REGSELLUT_REGSELETAPHIMODULE_H
18 #define REGSELLUT_REGSELETAPHIMODULE_H
70 if ( ! (
e.etamin()<
etamax() &&
e.etamax()>
etamin() ) )
return false;
79 double phimin2 =
e.phimin();
80 double phimax2 =
e.phimax();
83 if ( phimin1>phimax1 ) phimax1 +=
twopi;
84 if ( phimin2>phimax2 ) phimax2 +=
twopi;
86 if ( ( phimin1<phimax2 && phimax1>phimin2 ) ||
87 ( phimin1<(phimax2+
twopi) && phimax1>(phimin2+
twopi) ) ||
88 ( (phimin1+
twopi)<phimax2 && (phimax1+
twopi)>phimin2 ) ) inphi =
true;
110 s <<
"[ eta=" <<
e.etamin() <<
" - " <<
e.etamax();
111 s <<
"\tphi=" << 180*
e.phimin()/
M_PI <<
" - " << 180*
e.phimax()/
M_PI;
156 s <<
"[ eta= " <<
e.etamin() <<
" - " <<
e.etamax();
157 s <<
"\tphi= " << 180*
e.phimin()/
M_PI <<
" - " << 180*
e.phimax()/
M_PI;
158 s <<
"\tpay= " <<
e.payload();
165 #endif // REGSELLUT_REGSELETAPHIMODULE_H
template class with payload added NB: >, <, == and != operators should be defined for the payload for...
base class, with just the eta-phi limits and the overlap functionality
TRegSelEtaPhiModule(double etamin, double etamax, double phimin, double phimax, const T &t)
bool operator!=(const TRegSelEtaPhiModule< E > &e) const
virtual ~TRegSelEtaPhiModule()
double etamin() const
accessors
EtaPhiBase(double etamin, double etamax, double phimin, double phimax)
bool operator<(const TRegSelEtaPhiModule< E > &e) const
to allow "sorting" and uniqueness tests etc technically, only need a < operator, but there you go
bool operator>(const TRegSelEtaPhiModule< E > &e) const
bool overlap(const EtaPhiBase &e) const
do two eta-phi regions overlap?
double m_eta[2]
eta and phi limits for the module
virtual ~EtaPhiBase()=default
destructor
const T & payload() const
std::ostream & operator<<(std::ostream &s, const EtaPhiBase &e)
bool operator==(const TRegSelEtaPhiModule< E > &e) const