![]() |
ATLAS Offline Software
|
Describes the Region of Ineterest geometry It has basically 9 parameters. More...
#include <RoiDescriptor.h>
Public Types | |
| typedef std::vector< constIRoiDescriptor * >::const_iterator | roi_iterator |
Public Member Functions | |
| RoiDescriptor (bool fullscan=ROI) | |
| default constructor | |
| RoiDescriptor (double eta_, double etaMinus_, double etaPlus_, double phi_, double phiMinus_, double phiPlus_, double zed_=0, double zedMinus_=-s_zedWidthDefault, double zedPlus_=s_zedWidthDefault) | |
| constructor | |
| RoiDescriptor (double etaMinus_, double etaPlus_, double phiMinus_, double phiPlus_) | |
| constructor | |
| RoiDescriptor (const IRoiDescriptor &roi) | |
| copy constructors | |
| RoiDescriptor & | operator= (const IRoiDescriptor &r) |
| RoiDescriptor (const RoiDescriptor &roi) | |
| RoiDescriptor & | operator= (const RoiDescriptor &r) |
| virtual | ~RoiDescriptor () |
| virtual double | phi () const override final |
| Methods to retrieve data members. | |
| virtual double | eta () const override final |
| virtual double | zed () const override final |
| virtual unsigned int | roiId () const override |
| these quantities probably don't need to be used any more | |
| virtual unsigned int | l1Id () const override |
| virtual unsigned int | roiWord () const override |
| virtual double | zedPlus () const override final |
| z at the most forward end of the RoI | |
| virtual double | zedMinus () const override final |
| z at the most backward end of the RoI | |
| virtual double | etaPlus () const override final |
| gets eta at zedPlus | |
| virtual double | etaMinus () const override final |
| gets eta at zMinus | |
| virtual double | phiPlus () const override final |
| gets phiPlus | |
| virtual double | phiMinus () const override final |
| gets phiMinus | |
| virtual int | version () const override final |
| versioning | |
| void | version (int v) |
| virtual | operator std::string () const override |
| output | |
| virtual bool | isFullscan () const override final |
| is this a full scan RoI? | |
| virtual bool | composite () const override final |
| SuperRoI compatability methods. | |
| void | setComposite (bool b=true) |
| bool | manageConstituents () const |
| always manage constituents ??? | |
| void | manageConstituents (bool b) |
| virtual unsigned | size () const override final |
| number of constituents | |
| virtual const IRoiDescriptor * | at (int i) const override final |
| find an RoiDescriptor constituent | |
| void | clear () |
| clear the vector | |
| void | reserve (size_t s) |
| reserve elements in vector | |
| void | push_back (const IRoiDescriptor *roi) |
| add a RoiDescriptor | |
| virtual roi_iterator | begin () const override final |
| iterators | |
| virtual roi_iterator | end () const override final |
| virtual double | dzdrMinus () const override final |
| return the gradients | |
| virtual double | dzdrPlus () const override final |
| dz/dr at the front of the RoI | |
| virtual double | drdzMinus () const override final |
| dr/dz at the rear of the RoI | |
| virtual double | drdzPlus () const override final |
| dr/dz at the front of the RoI | |
| virtual double | zedMin (double r) const override final |
| methods to calculate z position at the RoI boundary at a given radius | |
| virtual double | zedMax (double r) const override final |
| virtual double | zedOuterPlus () const override final |
| z at the most forward end of the RoI | |
| virtual double | zedOuterMinus () const override final |
| z at the most backward end of the RoI | |
| virtual double | rhoMin (double z) const override final |
| accessors to calculate r position at position z along the RoI boundaries | |
| virtual double | rhoMax (double z) const override final |
Static Public Member Functions | |
| static double | zedWidthDefault () |
| static void | zedWidthDefault (double d) |
| set default z-width (but only before any RoiDescriptor has been created) | |
Static Public Attributes | |
| static constexpr bool | FULLSCAN = true |
| convenient | |
| static constexpr bool | ROI = false |
Protected Member Functions | |
| void | construct (double eta, double etaMinus, double etaPlus, double phi, double phiMinus, double phiPlus, double zed, double zedMinus, double zedPlus) |
| construct RoiDescriptor internals - similar to constructors | |
| void | construct (const IRoiDescriptor &_roi) |
Protected Attributes | |
| float | m_phi |
| phi of RoI center | |
| float | m_eta |
| eta of RoI center | |
| float | m_zed |
| zed of RoI center | |
| float | m_phiMinus |
| most negative RoI in azimuthal | |
| float | m_phiPlus |
| most positive RoI in azimuthal | |
| float | m_etaMinus |
| eta of RoI at zedMinus | |
| float | m_etaPlus |
| eta of RoI at zedPlus | |
| float | m_zedMinus |
| z position at most negative position along the beamline | |
| float | m_zedPlus |
| z position at most positive position along the beamline | |
| float | m_dzdrMinus |
| dz/dr at the rear of the RoI | |
| float | m_dzdrPlus |
| dz/dr at the front of the RoI | |
| float | m_drdzMinus |
| dr/dz at the rear of the RoI | |
| float | m_drdzPlus |
| dr/dz at the front of the RoI | |
| float | m_zedOuterMinus |
| z at rear of RoI at the outer radius ( = 1100 mm) | |
| float | m_zedOuterPlus |
| z at front of RoI at the outer radius ( = 1100 mm) | |
| bool | m_fullscan |
| flag this as a full detector RoI | |
| bool | m_composite |
| flag this as a composite RoI | |
| bool | m_manageConstituents |
| flag to determine whether consituents should be managed | |
| int | m_version |
| transient version identifier | |
| std::vector< const IRoiDescriptor * > | m_roiDescriptors |
| roi constituents | |
Static Protected Attributes | |
| static std::atomic< double > | s_zedWidthDefault = 225 |
| default parameters - there may be better ways, but this will do | |
| static std::atomic< bool > | s_firstInstanceCreated = false |
| to ensure default width is only set once at job startup | |
Friends | |
| class | TrigRoiDescriptorCnv_p2 |
| class | TrigRoiDescriptorCnv_p3 |
Describes the Region of Ineterest geometry It has basically 9 parameters.
Definition at line 40 of file RoiDescriptor.h.
|
inherited |
Definition at line 28 of file IRoiDescriptor.h.
| RoiDescriptor::RoiDescriptor | ( | bool | fullscan = ROI | ) |
default constructor
| fullscan | if fullscan is true, this RoI will span the entire detector |
if full scan, give it full detector limits just in case anyone doesn't bother to check whether the fullscan flag is set Fixme: these fullscan limits probably need to be set from somewhere constistently. static class variables ???
Definition at line 41 of file RoiDescriptor.cxx.
| RoiDescriptor::RoiDescriptor | ( | double | eta_, |
| double | etaMinus_, | ||
| double | etaPlus_, | ||
| double | phi_, | ||
| double | phiMinus_, | ||
| double | phiPlus_, | ||
| double | zed_ = 0, | ||
| double | zedMinus_ = -s_zedWidthDefault, | ||
| double | zedPlus_ = s_zedWidthDefault ) |
constructor
| eta | eta of RoI |
| etaMinus | eta at rear of RoI |
| etaPlus | eta at front of RoI |
| phi | phi of RoI |
| phiMinus | minimum phi of RoI |
| phiPlus | maximum phi of RoI |
| zed | zed of RoI |
| zedMinus | zed at rear of RoI |
| zedPlus | zed at front of RoI |
Definition at line 63 of file RoiDescriptor.cxx.
| RoiDescriptor::RoiDescriptor | ( | double | etaMinus_, |
| double | etaPlus_, | ||
| double | phiMinus_, | ||
| double | phiPlus_ ) |
constructor
| etaMinus | eta at rear of RoI |
| etaPlus | eta at front of RoI |
| phiMinus | minimum phi of RoI |
| phiPlus | maximum phi of RoI |
Definition at line 82 of file RoiDescriptor.cxx.
| RoiDescriptor::RoiDescriptor | ( | const IRoiDescriptor & | roi | ) |
copy constructors
Definition at line 107 of file RoiDescriptor.cxx.
| RoiDescriptor::RoiDescriptor | ( | const RoiDescriptor & | roi | ) |
Definition at line 124 of file RoiDescriptor.cxx.
|
virtual |
Definition at line 155 of file RoiDescriptor.cxx.
|
inlinefinaloverridevirtual |
find an RoiDescriptor constituent
Implements IRoiDescriptor.
Definition at line 148 of file RoiDescriptor.h.
|
inlinefinaloverridevirtual |
|
inline |
|
inlinefinaloverridevirtual |
SuperRoI compatability methods.
am I a SuperRoi?
Implements IRoiDescriptor.
Definition at line 137 of file RoiDescriptor.h.
|
protected |
Definition at line 236 of file RoiDescriptor.cxx.
|
protected |
construct RoiDescriptor internals - similar to constructors
NB: deal with float to double issue This is a hack for the region selector - the RS uses double precision for the phi=pi boundary because the RoiDescriptor only uses a float, so pi is represented as 3.14159274 which is > M_PI so we have to subtract 1e-7 a bit to prevent it failing any phi>M_PI conditions
NB: see comment in double RoiDescriptor::phiPlus()
calculate the gradients - very useful these
Definition at line 160 of file RoiDescriptor.cxx.
|
inlinefinaloverridevirtual |
dr/dz at the rear of the RoI
Implements IRoiDescriptor.
Definition at line 167 of file RoiDescriptor.h.
|
inlinefinaloverridevirtual |
dr/dz at the front of the RoI
Implements IRoiDescriptor.
Definition at line 168 of file RoiDescriptor.h.
|
inlinefinaloverridevirtual |
return the gradients
dz/dr at the rear of the RoI
Implements IRoiDescriptor.
Definition at line 164 of file RoiDescriptor.h.
|
inlinefinaloverridevirtual |
dz/dr at the front of the RoI
Implements IRoiDescriptor.
Definition at line 165 of file RoiDescriptor.h.
|
inlinefinaloverridevirtual |
|
inlinefinaloverridevirtual |
|
inlinefinaloverridevirtual |
|
inlinefinaloverridevirtual |
|
inlinefinaloverridevirtual |
|
inlineoverridevirtual |
Implements IRoiDescriptor.
Reimplemented in TrigRoiDescriptor.
Definition at line 109 of file RoiDescriptor.h.
|
inline |
|
inline |
Definition at line 142 of file RoiDescriptor.h.
|
overridevirtual |
output
Implements IRoiDescriptor.
Reimplemented in TrigRoiDescriptor.
Definition at line 255 of file RoiDescriptor.cxx.
| RoiDescriptor & RoiDescriptor::operator= | ( | const IRoiDescriptor & | r | ) |
manging it's own constituents, so take a deep copy
these are already managed elsewhere, just copy the pointers
Definition at line 127 of file RoiDescriptor.cxx.
| RoiDescriptor & RoiDescriptor::operator= | ( | const RoiDescriptor & | r | ) |
Definition at line 151 of file RoiDescriptor.cxx.
|
inlinefinaloverridevirtual |
Methods to retrieve data members.
directions
Implements IRoiDescriptor.
Definition at line 100 of file RoiDescriptor.h.
|
inlinefinaloverridevirtual |
|
inlinefinaloverridevirtual |
|
inline |
|
inline |
reserve elements in vector
Definition at line 154 of file RoiDescriptor.h.
|
finaloverridevirtual |
|
finaloverridevirtual |
accessors to calculate r position at position z along the RoI boundaries
Implements IRoiDescriptor.
Definition at line 247 of file RoiDescriptor.cxx.
|
inlineoverridevirtual |
these quantities probably don't need to be used any more
Implements IRoiDescriptor.
Reimplemented in TrigRoiDescriptor.
Definition at line 108 of file RoiDescriptor.h.
|
inlineoverridevirtual |
Implements IRoiDescriptor.
Reimplemented in TrigRoiDescriptor.
Definition at line 110 of file RoiDescriptor.h.
|
inline |
Definition at line 138 of file RoiDescriptor.h.
|
inlinefinaloverridevirtual |
|
inlinefinaloverridevirtual |
|
inline |
Definition at line 124 of file RoiDescriptor.h.
|
inlinefinaloverridevirtual |
|
finaloverridevirtual |
|
finaloverridevirtual |
methods to calculate z position at the RoI boundary at a given radius
Implements IRoiDescriptor.
Definition at line 244 of file RoiDescriptor.cxx.
|
inlinefinaloverridevirtual |
z at the most backward end of the RoI
Implements IRoiDescriptor.
Definition at line 113 of file RoiDescriptor.h.
|
inlinefinaloverridevirtual |
z at the most backward end of the RoI
Implements IRoiDescriptor.
Definition at line 176 of file RoiDescriptor.h.
|
inlinefinaloverridevirtual |
z at the most forward end of the RoI
Implements IRoiDescriptor.
Definition at line 175 of file RoiDescriptor.h.
|
inlinefinaloverridevirtual |
z at the most forward end of the RoI
Implements IRoiDescriptor.
Definition at line 112 of file RoiDescriptor.h.
|
inlinestatic |
Definition at line 183 of file RoiDescriptor.h.
|
static |
set default z-width (but only before any RoiDescriptor has been created)
Definition at line 33 of file RoiDescriptor.cxx.
|
friend |
Definition at line 190 of file RoiDescriptor.h.
|
friend |
Definition at line 191 of file RoiDescriptor.h.
|
staticconstexpr |
convenient
Definition at line 45 of file RoiDescriptor.h.
|
protected |
flag this as a composite RoI
Definition at line 233 of file RoiDescriptor.h.
|
protected |
dr/dz at the rear of the RoI
Definition at line 226 of file RoiDescriptor.h.
|
protected |
dr/dz at the front of the RoI
Definition at line 227 of file RoiDescriptor.h.
|
protected |
dz/dr at the rear of the RoI
Definition at line 223 of file RoiDescriptor.h.
|
protected |
dz/dr at the front of the RoI
Definition at line 224 of file RoiDescriptor.h.
|
protected |
eta of RoI center
Definition at line 213 of file RoiDescriptor.h.
|
protected |
eta of RoI at zedMinus
Definition at line 218 of file RoiDescriptor.h.
|
protected |
eta of RoI at zedPlus
Definition at line 219 of file RoiDescriptor.h.
|
protected |
flag this as a full detector RoI
Definition at line 232 of file RoiDescriptor.h.
|
protected |
flag to determine whether consituents should be managed
Definition at line 234 of file RoiDescriptor.h.
|
protected |
phi of RoI center
Definition at line 212 of file RoiDescriptor.h.
|
protected |
most negative RoI in azimuthal
Definition at line 216 of file RoiDescriptor.h.
|
protected |
most positive RoI in azimuthal
Definition at line 217 of file RoiDescriptor.h.
|
protected |
roi constituents
Definition at line 238 of file RoiDescriptor.h.
|
protected |
transient version identifier
Definition at line 236 of file RoiDescriptor.h.
|
protected |
zed of RoI center
Definition at line 214 of file RoiDescriptor.h.
|
protected |
z position at most negative position along the beamline
Definition at line 220 of file RoiDescriptor.h.
|
protected |
z at rear of RoI at the outer radius ( = 1100 mm)
Definition at line 229 of file RoiDescriptor.h.
|
protected |
z at front of RoI at the outer radius ( = 1100 mm)
Definition at line 230 of file RoiDescriptor.h.
|
protected |
z position at most positive position along the beamline
Definition at line 221 of file RoiDescriptor.h.
|
staticconstexpr |
Definition at line 46 of file RoiDescriptor.h.
|
staticprotected |
to ensure default width is only set once at job startup
Definition at line 208 of file RoiDescriptor.h.
|
staticprotected |
default parameters - there may be better ways, but this will do
Definition at line 206 of file RoiDescriptor.h.