|
ATLAS Offline Software
|
Go to the documentation of this file.
15 #ifndef ROIDESCRIPTOR_ROIDESCRIPTOR_H
16 #define ROIDESCRIPTOR_ROIDESCRIPTOR_H
46 static constexpr
bool ROI =
false;
69 double phi_,
double phiMinus_,
double phiPlus_,
79 double phiMinus_,
double phiPlus_ );
108 virtual unsigned int roiId()
const override {
return 0; }
109 virtual unsigned int l1Id()
const override {
return 0; }
110 virtual unsigned int roiWord()
const override {
return 0; }
128 virtual operator std::string()
const override;
172 virtual double zedMin(
double r)
const override final;
173 virtual double zedMax(
double r)
const override final;
178 virtual double rhoMin(
double z)
const override final;
179 virtual double rhoMax(
double z)
const override final;
246 #endif // ROIDESCRIPTOR_H
bool m_composite
flag this as a composite RoI
virtual double zedMinus() const override final
z at the most backward end of the RoI
std::vector< const IRoiDescriptor * >::const_iterator roi_iterator
float m_eta
eta of RoI center
virtual double dzdrPlus() const override final
dz/dr at the front of the RoI
float m_etaMinus
eta of RoI at zedMinus
virtual bool composite() const override final
SuperRoI compatability methods.
virtual unsigned size() const override final
number of constituents
bool m_manageConstituents
flag to determine whether consituents should be managed
bool const RAWDATA *ch2 const
RoiDescriptor & operator=(const IRoiDescriptor &r)
float m_zedOuterPlus
z at front of RoI at the outer radius ( = 1100 mm)
std::string str(const RoiDescriptor &d)
virtual unsigned int l1Id() const override
void push_back(const IRoiDescriptor *roi)
add a RoiDescriptor
float m_zedPlus
z position at most positive position along the beamline
static std::atomic< double > s_zedWidthDefault
default parameters - there may be better ways, but this will do
virtual const IRoiDescriptor * at(int i) const override final
find an RoiDescriptor constituent
void reserve(size_t s)
reserve elements in vector
Describes the API of the Region of Ineterest geometry.
float m_zedOuterMinus
z at rear of RoI at the outer radius ( = 1100 mm)
void clear()
clear the vector
float m_phiPlus
most positive RoI in azimuthal
Describes the Region of Ineterest geometry It has basically 9 parameters.
virtual roi_iterator end() const override final
virtual unsigned int roiWord() const override
float m_drdzMinus
dr/dz at the rear of the RoI
float m_dzdrMinus
dz/dr at the rear of the RoI
float m_drdzPlus
dr/dz at the front of the RoI
float m_zedMinus
z position at most negative position along the beamline
std::vector< const IRoiDescriptor * > m_roiDescriptors
roi constituents
RoiDescriptor(bool fullscan=ROI)
default constructor
virtual double zed() const override final
virtual double rhoMax(double z) const override final
std::ostream & operator<<(std::ostream &m, const RoiDescriptor &d)
virtual double zedOuterMinus() const override final
z at the most backward end of the RoI
float m_dzdrPlus
dz/dr at the front of the RoI
virtual double drdzPlus() const override final
dr/dz at the front 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 etaPlus() const override final
gets eta at zedPlus
float m_zed
zed of RoI center
virtual double zedOuterPlus() const override final
z at the most forward end of the RoI
virtual double phi() const override final
Methods to retrieve data members.
virtual double dzdrMinus() const override final
return the gradients
static std::atomic< bool > s_firstInstanceCreated
to ensure default width is only set once at job startup
static double zedWidthDefault()
virtual bool isFullscan() const override final
is this a full scan RoI?
virtual double zedMin(double r) const override final
methods to calculate z position at the RoI boundary at a given radius
virtual roi_iterator begin() const override final
iterators
virtual double eta() const override final
static constexpr bool FULLSCAN
convenient
virtual double zedMax(double r) const override final
bool m_fullscan
flag this as a full detector RoI
void setComposite(bool b=true)
virtual unsigned int roiId() const override
these quantities probably don't need to be used any more
static constexpr bool ROI
bool manageConstituents() const
always manage constituents ???
virtual int version() const override final
versioning
virtual double phiPlus() const override final
gets phiPlus
virtual double etaMinus() const override final
gets eta at zMinus
float m_phiMinus
most negative RoI in azimuthal
virtual double drdzMinus() const override final
dr/dz at the rear of the RoI
float m_phi
phi of RoI center
virtual double phiMinus() const override final
gets phiMinus
float m_etaPlus
eta of RoI at zedPlus
int m_version
transient version identifier
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 manageConstituents(bool b)
virtual double zedPlus() const override final
z at the most forward end of the RoI