#include <VolumeSplitterUtils.h>
|
| bool | inR (unsigned int i, double r) const |
| bool | inZ (unsigned int i, double z) const |
Definition at line 119 of file VolumeSplitterUtils.h.
◆ ChildIterator
◆ PconZone() [1/2]
| InDetDD::PconZone::PconZone |
( |
const std::string & | label, |
|
|
bool | rotated = false ) |
Definition at line 225 of file VolumeSplitterUtils.cxx.
227 {}
const std::string & label() const
Zone(const std::string &label, bool rotated=false)
◆ PconZone() [2/2]
| InDetDD::PconZone::PconZone |
( |
const std::string & | label, |
|
|
const GeoPcon * | shape, |
|
|
bool | rotated = false ) |
Definition at line 229 of file VolumeSplitterUtils.cxx.
231 for (
unsigned int i = 0;
i < shape->getNPlanes(); ++
i) {
232 addPlane(shape->getZPlane(i), shape->getRMinPlane(i), shape->getRMaxPlane(i));
233 }
234 }
void addPlane(double z, double rmin, double rmax)
◆ add()
| void InDetDD::Zone::add |
( |
const Zone * | zone | ) |
|
|
inherited |
◆ addPlane()
| void InDetDD::PconZone::addPlane |
( |
double | z, |
|
|
double | rmin, |
|
|
double | rmax ) |
Definition at line 237 of file VolumeSplitterUtils.cxx.
237 {
241 }
std::vector< double > m_z
std::vector< double > m_rmax
std::vector< double > m_rmin
◆ begin()
◆ end()
◆ findEntry()
| Point InDetDD::PconZone::findEntry |
( |
const Ray & | ray | ) |
const |
|
virtual |
Implements InDetDD::Zone.
Definition at line 266 of file VolumeSplitterUtils.cxx.
266 {
267 if (ray.horizontal()) {
268 for (
unsigned int i = 0;
i + 1 <
m_z.size();
i += 2) {
269 if (
inR(i, ray.start().r()) && ray.start().z() <
m_z[i] && ray.end().z() >
m_z[i]) {
273 }
274 }
275 } else if (ray.vertical()) {
276 for (
unsigned int i = 0;
i + 1 <
m_z.size();
i += 2) {
277 if (
inZ(i, ray.start().z()) && ray.start().r() <
m_rmin[i] && ray.end().r() >
m_rmin[i]) {
281 }
282 }
283 } else {
284 std::cout << "Unexpected case" << std::endl;
285 }
286
287 return {};
288 }
ChargedTracksWeightFilter::Spline::Point Point
bool inZ(unsigned int i, double z) const
bool inR(unsigned int i, double r) const
◆ findExit()
| Point InDetDD::PconZone::findExit |
( |
const Ray & | ray | ) |
const |
|
virtual |
Implements InDetDD::Zone.
Definition at line 292 of file VolumeSplitterUtils.cxx.
292 {
293 if (ray.horizontal()) {
294 for (
unsigned int i = 0;
i + 1 <
m_z.size();
i += 2) {
295 if (
inZ(i, ray.start().z()) && ray.end().z() >
m_z[i + 1] && !
inR(i + 2, ray.start().r())) {
299 }
300 }
301 } else if (ray.vertical()) {
302 for (
unsigned int i = 0;
i + 1 <
m_z.size();
i += 2) {
303 if (
inZ(i, ray.start().z()) && ray.end().r() >
m_rmax[i]) {
307 }
308 }
309 } else {
310 std::cout << "Unexpected case" << std::endl;
311 }
312
313 return {};
314 }
◆ inR()
| bool InDetDD::PconZone::inR |
( |
unsigned int | i, |
|
|
double | r ) const |
|
private |
◆ inSide()
| bool InDetDD::PconZone::inSide |
( |
const Point & | point | ) |
const |
|
virtual |
◆ inZ()
| bool InDetDD::PconZone::inZ |
( |
unsigned int | i, |
|
|
double | z ) const |
|
private |
◆ label()
| const std::string & InDetDD::Zone::label |
( |
| ) |
const |
|
inlineinherited |
◆ rotated()
| bool InDetDD::Zone::rotated |
( |
| ) |
const |
|
inlineinherited |
◆ m_children
| std::vector<const Zone *> InDetDD::Zone::m_children |
|
privateinherited |
◆ m_label
| std::string InDetDD::Zone::m_label |
|
privateinherited |
◆ m_rmax
| std::vector<double> InDetDD::PconZone::m_rmax |
|
private |
◆ m_rmin
| std::vector<double> InDetDD::PconZone::m_rmin |
|
private |
◆ m_rotated
| bool InDetDD::Zone::m_rotated |
|
privateinherited |
◆ m_z
| std::vector<double> InDetDD::PconZone::m_z |
|
private |
The documentation for this class was generated from the following files: