|
ATLAS Offline Software
|
Go to the documentation of this file.
22 constexpr
float M_PIF =
M_PI;
24 constexpr
double MAX_R = 1100;
33 virtual const char*
what()
const throw() {
return m_str.c_str(); }
43 const double zouter = dzdr*MAX_R +
z0;
46 return (
z0<=rd.zedPlus() &&
z0>=rd.zedMinus() &&
47 zouter<=rd.zedOuterPlus() && zouter>=rd.zedOuterMinus() );
52 if ( contains_internal( *rd ) )
return true;
56 else return contains_internal( roi );
61 const double zouter = dzdr*MAX_R +
z0;
64 return ( z0<=zmax && z0>=
zmin &&
65 zouter<=rd.zedOuterPlus() && zouter>=rd.zedOuterMinus() );
70 if ( contains_internal( *rd ) )
return true;
74 else return contains_internal( roi );
105 return (
z>=zminus &&
z<=zplus );
126 if ( !(
phi >= -M_PIF &&
phi <= M_PIF) ) {
134 if ( !(
eta>-100 &&
eta<100) ) {
142 if ( !(zed>-100000 && zed<100000 ) ) {
152 if ( &roi0 == &roi1 )
return true;
165 if ( std::fabs(roi0.
zed() -roi1.
zed() )>1
e-7 )
return false;
169 if ( std::fabs(roi0.
eta() -roi1.
eta() )>1
e-7 )
return false;
175 if ( std::fabs(roi0.
phi() -roi1.
phi() ) >1
e-7 )
return false;
181 if ( roi0.
size() != roi1.
size() )
return false;
182 for (
unsigned i=roi0.
size() ;
i-- ; )
if ( !( *roi0.
at(
i) == *roi1.
at(
i) ) )
return false;
virtual double phi() const =0
Methods to retrieve data members.
double phicheck(double phi)
basic range checkers
Scalar phi() const
phi method
Scalar eta() const
pseudorapidity method
virtual double etaMinus() const =0
bool containsPhi(const IRoiDescriptor &roi, double phi)
test whether a stub is contained within the roi
bool containsZed(const IRoiDescriptor &roi, double z, double r)
virtual unsigned size() const =0
number of constituents
virtual double etaPlus() const =0
virtual double dzdrMinus() const =0
return the gradients
virtual double dzdrPlus() const =0
virtual double eta() const =0
Describes the API of the Region of Ineterest geometry.
double zedcheck(double zed)
virtual double phiMinus() const =0
virtual double phiPlus() const =0
extreme phi values
bool operator==(const IRoiDescriptor &roi0, const IRoiDescriptor &roi1)
std::string to_string(const DetectorType &type)
bool contains_zrange(const IRoiDescriptor &roi, double z0, double dzdr, double zmin, double zmax)
virtual const char * what() const
virtual double zedPlus() const =0
the zed and eta values at the most forward and most rear ends of the RoI
virtual bool isFullscan() const =0
is this a full detector RoI?
virtual double zed() const =0
virtual double zedMinus() const =0
bool contains(const IRoiDescriptor &roi, double z0, double dzdr)
see whether a segment is contained within the roi in r-z
range_error(const char *s)
virtual const IRoiDescriptor * at(int i) const =0
find an RoiDescriptor constituent
double etacheck(double eta)
virtual bool composite() const =0
Super RoI access methods.
bool operator!=(const IRoiDescriptor &roi0, const IRoiDescriptor &roi1)