|
ATLAS Offline Software
|
Go to the documentation of this file.
5 #ifndef InDetGeoModelUtils_VolumeSplitterUtils_H
6 #define InDetGeoModelUtils_VolumeSplitterUtils_H
28 double z()
const {
return m_z;}
29 double r()
const {
return m_r;}
102 TubeZone(
const std::string &
label,
const GeoTube * shape,
double zOffset,
bool rotated =
false);
111 bool inR(
double r)
const;
112 bool inZ(
double z)
const;
124 void addPlane(
double z,
double rmin,
double rmax);
129 bool inR(
unsigned int i,
double r)
const;
130 bool inZ(
unsigned int i,
double z)
const;
200 #endif // InDetGeoModelUtils_VolumeSplitterUtils_H
std::vector< const Zone * >::const_iterator ChildIterator
virtual double getRmin() const
const Zone * child() const
void addSegment(const Zone *, const Point &start, const Point &end)
void addPlane(double z, double rmin, double rmax)
const SegmentList & split(const Zone *, const Ray &)
std::vector< double > m_z
std::vector< Segment > m_segments
ChildIterator begin() const
virtual Point findExit(const Ray &ray) const
const std::string & label() const
Segment(const std::string &label, const Point &start, const Point &end, bool rotated=false)
const Point & end() const
Point nearestPoint(const Point &point1, const Point &point2)
Ray addChildSegment(const Zone *, const Ray &)
std::ostream & operator<<(std::ostream &os, const SiCellId &cellId)
bool inR(unsigned int i, double r) const
std::vector< double > m_rmax
const std::string & label() const
virtual double getRmax() const
virtual Point findEntry(const Ray &ray) const
unsigned int size() const
PconZone(const std::string &label, bool rotated=false)
ChildIterator end() const
Point getNextBoundary(const Zone *, const Ray &)
virtual bool inSide(const Point &point) const
virtual double getZmin() const
void setChild(const Zone *zone)
const Point & start() const
virtual Point findExit(const Ray &ray) const =0
void add(const std::string &label, const Point &start, const Point &end, bool rotated=false)
virtual bool inSide(const Point &point) const =0
std::vector< double > m_rmin
virtual Point findEntry(const Ray &ray) const
void set(const Point &start, const Point &end)
virtual bool inSide(const Point &point) const
virtual Point findEntry(const Ray &ray) const
std::vector< const Zone * > m_children
virtual Point findExit(const Ray &ray) const
virtual Point findEntry(const Ray &ray) const =0
UnboundedZone(const std::string &label)
bool inZ(unsigned int i, double z) const
Zone(const std::string &label, bool rotated=false)
virtual bool inSide(const Point &point) const
const Segment & getSegment(unsigned int i) const
TubeZone(const std::string &label, double zmin, double zmax, double rmin, double rmax, bool rotated=false)
Ray searchPoint(const Zone *zone, const Ray &ray)
virtual double getZmax() const
Muon::NSW_PadTriggerSegment segment(const NSWL1::PadTrigger &data)
virtual Point findExit(const Ray &ray) const