CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Private Member Functions | Private Attributes
Phase2OTBarrelRod Class Referencefinal

#include <Phase2OTBarrelRod.h>

Inheritance diagram for Phase2OTBarrelRod:
DetRod GeometricSearchDet

Public Types

typedef GenericBinFinderInZ< float, GeomDetBinFinderType
 
- Public Types inherited from GeometricSearchDet
typedef std::pair< const GeomDet *, TrajectoryStateOnSurfaceDetWithState
 
typedef BoundSurface::PositionType PositionType
 
typedef BoundSurface::RotationType RotationType
 
typedef TrajectoryStateOnSurface TrajectoryState
 

Public Member Functions

const std::vector< const GeomDet * > & basicComponents () const override
 
std::pair< bool, TrajectoryStateOnSurfacecompatible (const TrajectoryStateOnSurface &ts, const Propagator &, const MeasurementEstimator &) const override __attribute__((cold))
 
const std::vector< const GeometricSearchDet * > & components () const override __attribute__((cold))
 Returns basic components, if any. More...
 
void groupedCompatibleDetsV (const TrajectoryStateOnSurface &tsos, const Propagator &prop, const MeasurementEstimator &est, std::vector< DetGroup > &result) const override __attribute__((hot))
 
 Phase2OTBarrelRod (std::vector< const GeomDet * > &innerDets, std::vector< const GeomDet * > &outerDets, std::vector< const GeomDet * > &innerDetBrothers, std::vector< const GeomDet * > &outerDetBrothers) __attribute__((cold))
 
 ~Phase2OTBarrelRod () override __attribute__((cold))
 
- Public Member Functions inherited from DetRod
virtual const PlanespecificSurface () const final
 Return the rod surface as a Plane. More...
 
const BoundSurfacesurface () const final
 The surface of the GeometricSearchDet. More...
 
 ~DetRod () override
 
- Public Member Functions inherited from GeometricSearchDet
virtual std::vector< DetWithStatecompatibleDets (const TrajectoryStateOnSurface &startingState, const Propagator &prop, const MeasurementEstimator &est) const
 
virtual void compatibleDetsV (const TrajectoryStateOnSurface &startingState, const Propagator &prop, const MeasurementEstimator &est, std::vector< DetWithState > &result) const
 
 GeometricSearchDet (bool doHaveGroups)
 
virtual std::vector< DetGroupgroupedCompatibleDets (const TrajectoryStateOnSurface &startingState, const Propagator &prop, const MeasurementEstimator &est) const
 
bool hasGroups () const
 
virtual const Surface::PositionTypeposition () const
 Returns position of the surface. More...
 
virtual ~GeometricSearchDet ()
 

Private Member Functions

bool addClosest (const TrajectoryStateOnSurface &tsos, const Propagator &prop, const MeasurementEstimator &est, const SubLayerCrossing &crossing, std::vector< DetGroup > &result, std::vector< DetGroup > &brotherresult) const __attribute__((hot))
 
SubLayerCrossings computeCrossings (const TrajectoryStateOnSurface &tsos, PropagationDirection propDir) const __attribute__((hot))
 
float computeWindowSize (const GeomDet *det, const TrajectoryStateOnSurface &tsos, const MeasurementEstimator &est) const __attribute__((hot))
 
void searchNeighbors (const TrajectoryStateOnSurface &tsos, const Propagator &prop, const MeasurementEstimator &est, const SubLayerCrossing &crossing, float window, std::vector< DetGroup > &result, std::vector< DetGroup > &brotherresult, bool checkClosest) const __attribute__((hot))
 
const std::vector< const GeomDet * > & subRod (int ind) const
 
const std::vector< const GeomDet * > & subRodBrothers (int ind) const
 

Private Attributes

std::vector< const GeomDet * > theDets
 
BinFinderType theInnerBinFinder
 
std::vector< const GeomDet * > theInnerDetBrothers
 
std::vector< const GeomDet * > theInnerDets
 
ReferenceCountingPointer< PlanetheInnerPlane
 
BinFinderType theOuterBinFinder
 
std::vector< const GeomDet * > theOuterDetBrothers
 
std::vector< const GeomDet * > theOuterDets
 
ReferenceCountingPointer< PlanetheOuterPlane
 

Additional Inherited Members

- Protected Member Functions inherited from DetRod
void setPlane (Plane *plane)
 Set the rod's plane. More...
 
- Protected Attributes inherited from GeometricSearchDet
bool haveGroups
 
GeomDetCompatibilityChecker theCompatibilityChecker
 

Detailed Description

A concrete implementation for TOB Rod

Definition at line 14 of file Phase2OTBarrelRod.h.

Member Typedef Documentation

Definition at line 16 of file Phase2OTBarrelRod.h.

Constructor & Destructor Documentation

Phase2OTBarrelRod::Phase2OTBarrelRod ( std::vector< const GeomDet * > &  innerDets,
std::vector< const GeomDet * > &  outerDets,
std::vector< const GeomDet * > &  innerDetBrothers,
std::vector< const GeomDet * > &  outerDetBrothers 
)

Definition at line 27 of file Phase2OTBarrelRod.cc.

References mps_fire::i, LogDebug, DetRod::setPlane(), theDets, theInnerBinFinder, theInnerDetBrothers, theInnerDets, theInnerPlane, theOuterBinFinder, theOuterDetBrothers, theOuterDets, and theOuterPlane.

31  : DetRod(true),
32  theInnerDets(innerDets),
33  theOuterDets(outerDets),
34  theInnerDetBrothers(innerDetBrothers),
35  theOuterDetBrothers(outerDetBrothers) {
36  theDets.assign(theInnerDets.begin(), theInnerDets.end());
37  theDets.insert(theDets.end(), theOuterDets.begin(), theOuterDets.end());
38  theDets.insert(theDets.end(), theInnerDetBrothers.begin(), theInnerDetBrothers.end());
39  theDets.insert(theDets.end(), theOuterDetBrothers.begin(), theOuterDetBrothers.end());
40 
41  RodPlaneBuilderFromDet planeBuilder;
42  setPlane(planeBuilder(theDets));
43  theInnerPlane = planeBuilder(theInnerDets);
44  theOuterPlane = planeBuilder(theOuterDets);
45 
46  // modules be already sorted in z
47 
50 
51 #ifdef EDM_ML_DEBUG
52  LogDebug("TkDetLayers") << "==== DEBUG Phase2OTBarrelRod =====";
53  for (vector<const GeomDet*>::const_iterator i = theInnerDets.begin(); i != theInnerDets.end(); i++) {
54  LogDebug("TkDetLayers") << "inner Phase2OTBarrelRod's Det pos z,perp,eta,phi: " << (**i).position().z() << " , "
55  << (**i).position().perp() << " , " << (**i).position().eta() << " , "
56  << (**i).position().phi();
57  }
58 
59  for (vector<const GeomDet*>::const_iterator i = theInnerDetBrothers.begin(); i != theInnerDetBrothers.end(); i++) {
60  LogDebug("TkDetLayers") << "inner Phase2OTBarrelRod's Det Brother pos z,perp,eta,phi: " << (**i).position().z()
61  << " , " << (**i).position().perp() << " , " << (**i).position().eta() << " , "
62  << (**i).position().phi();
63  }
64 
65  for (vector<const GeomDet*>::const_iterator i = theOuterDets.begin(); i != theOuterDets.end(); i++) {
66  LogDebug("TkDetLayers") << "outer Phase2OTBarrelRod's Det pos z,perp,eta,phi: " << (**i).position().z() << " , "
67  << (**i).position().perp() << " , " << (**i).position().eta() << " , "
68  << (**i).position().phi();
69  }
70 
71  for (vector<const GeomDet*>::const_iterator i = theOuterDetBrothers.begin(); i != theOuterDetBrothers.end(); i++) {
72  LogDebug("TkDetLayers") << "outer Phase2OTBarrelRod's Det Brother pos z,perp,eta,phi: " << (**i).position().z()
73  << " , " << (**i).position().perp() << " , " << (**i).position().eta() << " , "
74  << (**i).position().phi();
75  }
76  LogDebug("TkDetLayers") << "==== end DEBUG Phase2OTBarrelRod =====";
77 #endif
78 }
#define LogDebug(id)
BinFinderType theOuterBinFinder
std::vector< const GeomDet * > theDets
BinFinderType theInnerBinFinder
std::vector< const GeomDet * > theOuterDetBrothers
Definition: DetRod.h:13
ReferenceCountingPointer< Plane > theOuterPlane
void setPlane(Plane *plane)
Set the rod&#39;s plane.
Definition: DetRod.h:28
GenericBinFinderInZ< float, GeomDet > BinFinderType
ReferenceCountingPointer< Plane > theInnerPlane
std::vector< const GeomDet * > theOuterDets
std::vector< const GeomDet * > theInnerDets
std::vector< const GeomDet * > theInnerDetBrothers
Phase2OTBarrelRod::~Phase2OTBarrelRod ( )
override

Definition at line 80 of file Phase2OTBarrelRod.cc.

80 {}

Member Function Documentation

bool Phase2OTBarrelRod::addClosest ( const TrajectoryStateOnSurface tsos,
const Propagator prop,
const MeasurementEstimator est,
const SubLayerCrossing crossing,
std::vector< DetGroup > &  result,
std::vector< DetGroup > &  brotherresult 
) const
private

Definition at line 193 of file Phase2OTBarrelRod.cc.

References CompatibleDetToGroupAdder::add(), SubLayerCrossing::closestDetIndex(), mps_fire::result, SubLayerCrossing::subLayerIndex(), subRod(), and subRodBrothers().

Referenced by basicComponents(), and groupedCompatibleDetsV().

198  {
199  const vector<const GeomDet*>& sRod(subRod(crossing.subLayerIndex()));
200  bool firstgroup = CompatibleDetToGroupAdder::add(*sRod[crossing.closestDetIndex()], tsos, prop, est, result);
201  // it assumes that the closestDetIndex is ok also for the brother detectors: the crossing is NOT recomputed
202  const vector<const GeomDet*>& sRodBrothers(subRodBrothers(crossing.subLayerIndex()));
203  bool brothergroup =
204  CompatibleDetToGroupAdder::add(*sRodBrothers[crossing.closestDetIndex()], tsos, prop, est, brotherresult);
205 
206  return firstgroup || brothergroup;
207 }
int closestDetIndex() const
int subLayerIndex() const
static bool add(const GeometricSearchDet &det, const TrajectoryStateOnSurface &tsos, const Propagator &prop, const MeasurementEstimator &est, std::vector< DetGroup > &result) __attribute__((hot))
const std::vector< const GeomDet * > & subRodBrothers(int ind) const
const std::vector< const GeomDet * > & subRod(int ind) const
const std::vector<const GeomDet*>& Phase2OTBarrelRod::basicComponents ( ) const
inlineoverridevirtual
pair< bool, TrajectoryStateOnSurface > Phase2OTBarrelRod::compatible ( const TrajectoryStateOnSurface ts,
const Propagator ,
const MeasurementEstimator  
) const
overridevirtual

tests the geometrical compatibility of the Det with the predicted state. The FreeTrajectoryState argument is propagated to the Det surface using the Propagator argument. The resulting TrajectoryStateOnSurface is tested for compatibility with the surface bounds. If compatible, a std::pair< true, propagatedState> is returned. If the propagation fails, or if the state is not compatible, a std::pair< false, propagatedState> is returned.

Implements GeometricSearchDet.

Definition at line 86 of file Phase2OTBarrelRod.cc.

Referenced by basicComponents().

88  {
89  edm::LogError("TkDetLayers") << "temporary dummy implementation of Phase2OTBarrelRod::compatible()!!";
90  return pair<bool, TrajectoryStateOnSurface>();
91 }
const vector< const GeometricSearchDet * > & Phase2OTBarrelRod::components ( ) const
overridevirtual

Returns basic components, if any.

Returns direct components, if any

Implements GeometricSearchDet.

Definition at line 82 of file Phase2OTBarrelRod.cc.

Referenced by basicComponents().

82  {
83  throw DetLayerException("Phase2OTBarrelRod doesn't have GeometricSearchDet components");
84 }
Common base class.
SubLayerCrossings Phase2OTBarrelRod::computeCrossings ( const TrajectoryStateOnSurface tsos,
PropagationDirection  propDir 
) const
private

Definition at line 160 of file Phase2OTBarrelRod.cc.

References funct::abs(), GenericBinFinderInZ< T, G >::binIndex(), GenericBinFinderInZ< T, G >::binPosition(), TrajectoryStateOnSurface::globalMomentum(), TrajectoryStateOnSurface::globalPosition(), rho, theInnerBinFinder, theInnerPlane, theOuterBinFinder, theOuterPlane, and TrajectoryStateOnSurface::transverseCurvature().

Referenced by basicComponents(), and groupedCompatibleDetsV().

161  {
162  GlobalPoint startPos(startingState.globalPosition());
163  GlobalVector startDir(startingState.globalMomentum());
164  double rho(startingState.transverseCurvature());
165 
166  HelixBarrelPlaneCrossingByCircle crossing(startPos, startDir, rho, propDir);
167 
168  std::pair<bool, double> outerPath = crossing.pathLength(*theOuterPlane);
169  if (!outerPath.first)
170  return SubLayerCrossings();
171  GlobalPoint gOuterPoint(crossing.position(outerPath.second));
172 
173  std::pair<bool, double> innerPath = crossing.pathLength(*theInnerPlane);
174  if (!innerPath.first)
175  return SubLayerCrossings();
176  GlobalPoint gInnerPoint(crossing.position(innerPath.second));
177 
178  int innerIndex = theInnerBinFinder.binIndex(gInnerPoint.z());
179  float innerDist = std::abs(theInnerBinFinder.binPosition(innerIndex) - gInnerPoint.z());
180  SubLayerCrossing innerSLC(0, innerIndex, gInnerPoint);
181 
182  int outerIndex = theOuterBinFinder.binIndex(gOuterPoint.z());
183  float outerDist = std::abs(theOuterBinFinder.binPosition(outerIndex) - gOuterPoint.z());
184  SubLayerCrossing outerSLC(1, outerIndex, gOuterPoint);
185 
186  if (innerDist < outerDist) {
187  return SubLayerCrossings(innerSLC, outerSLC, 0);
188  } else {
189  return SubLayerCrossings(outerSLC, innerSLC, 1);
190  }
191 }
BinFinderType theOuterBinFinder
T binPosition(int ind) const override
the middle of the bin.
BinFinderType theInnerBinFinder
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
int binIndex(T z) const override
returns an index in the valid range for the bin closest to Z
ReferenceCountingPointer< Plane > theOuterPlane
ReferenceCountingPointer< Plane > theInnerPlane
float Phase2OTBarrelRod::computeWindowSize ( const GeomDet det,
const TrajectoryStateOnSurface tsos,
const MeasurementEstimator est 
) const
private

Definition at line 209 of file Phase2OTBarrelRod.cc.

References funct::abs(), Surface::bounds(), constexpr, Bounds::length(), phase1PixelTopology::localY(), MeasurementEstimator::maximalLocalDisplacement(), goodZToMuMu_cfi::overlap, GeomDet::surface(), GloballyPositioned< T >::toLocal(), svgfig::window(), and y.

Referenced by basicComponents(), and groupedCompatibleDetsV().

211  {
212  return est.maximalLocalDisplacement(tsos, det->surface()).y();
213 }
const Plane & surface() const
The nominal surface of the GeomDet.
Definition: GeomDet.h:37
virtual Local2DVector maximalLocalDisplacement(const TrajectoryStateOnSurface &ts, const Plane &plane) const =0
void Phase2OTBarrelRod::groupedCompatibleDetsV ( const TrajectoryStateOnSurface tsos,
const Propagator prop,
const MeasurementEstimator est,
std::vector< DetGroup > &  result 
) const
overridevirtual

Reimplemented from GeometricSearchDet.

Definition at line 93 of file Phase2OTBarrelRod.cc.

References addClosest(), LayerCrossingSide::barrelSide(), SubLayerCrossings::closest(), SubLayerCrossings::closestIndex(), computeCrossings(), computeWindowSize(), SubLayerCrossings::isValid(), LogTrace, eostools::move(), DetGroupMerger::orderAndMergeTwoLevels(), SubLayerCrossings::other(), Propagator::propagationDirection(), searchNeighbors(), and svgfig::window().

Referenced by basicComponents().

96  {
97  SubLayerCrossings crossings;
98  crossings = computeCrossings(tsos, prop.propagationDirection());
99  if (!crossings.isValid())
100  return;
101 
102  std::vector<DetGroup> closestResult;
103  std::vector<DetGroup> closestBrotherResult;
104  addClosest(tsos, prop, est, crossings.closest(), closestResult, closestBrotherResult);
105  if (closestResult.empty()) {
106  std::vector<DetGroup> nextResult;
107  std::vector<DetGroup> nextBrotherResult;
108  addClosest(tsos, prop, est, crossings.other(), nextResult, nextBrotherResult);
109  if (nextResult.empty())
110  return;
111 
112  DetGroupElement nextGel(nextResult.front().front());
113  int crossingSide = LayerCrossingSide().barrelSide(nextGel.trajectoryState(), prop);
114  std::vector<DetGroup> closestCompleteResult;
116  std::move(closestResult), std::move(closestBrotherResult), closestCompleteResult, 0, crossingSide);
117  std::vector<DetGroup> nextCompleteResult;
119  std::move(nextResult), std::move(nextBrotherResult), nextCompleteResult, 0, crossingSide);
120 
122  std::move(closestCompleteResult), std::move(nextCompleteResult), result, crossings.closestIndex(), crossingSide);
123  } else {
124  DetGroupElement closestGel(closestResult.front().front());
125  int crossingSide = LayerCrossingSide().barrelSide(closestGel.trajectoryState(), prop);
126  float window = computeWindowSize(closestGel.det(), closestGel.trajectoryState(), est);
127 
128  searchNeighbors(tsos, prop, est, crossings.closest(), window, closestResult, closestBrotherResult, false);
129 
130  std::vector<DetGroup> closestCompleteResult;
132  std::move(closestResult), std::move(closestBrotherResult), closestCompleteResult, 0, crossingSide);
133 
134  std::vector<DetGroup> nextResult;
135  std::vector<DetGroup> nextBrotherResult;
136  searchNeighbors(tsos, prop, est, crossings.other(), window, nextResult, nextBrotherResult, true);
137 
138  std::vector<DetGroup> nextCompleteResult;
140  std::move(nextResult), std::move(nextBrotherResult), nextCompleteResult, 0, crossingSide);
141 
143  std::move(closestCompleteResult), std::move(nextCompleteResult), result, crossings.closestIndex(), crossingSide);
144  }
145 
146  //due to propagator problems, when we add single pt sub modules, we should order them in r (barrel)
147  sort(result.begin(), result.end(), DetGroupElementPerpLess());
148  for (auto& grp : result) {
149  if (grp.empty())
150  continue;
151  LogTrace("TkDetLayers") << "New group in Phase2OTBarrelRod made by : ";
152  for (auto const& det : grp) {
153  LogTrace("TkDetLayers") << " geom det at r: " << det.det()->position().perp()
154  << " id:" << det.det()->geographicalId().rawId()
155  << " tsos at:" << det.trajectoryState().globalPosition();
156  }
157  }
158 }
static int barrelSide(const TrajectoryStateOnSurface &startingState, const Propagator &prop)
returns 0 if barrel layer crossed from inside, 1 if from outside
int closestIndex() const
virtual PropagationDirection propagationDirection() const final
Definition: Propagator.h:139
def window(xmin, xmax, ymin, ymax, x=0, y=0, width=100, height=100, xlogbase=None, ylogbase=None, minusInfinity=-1000, flipx=False, flipy=True)
Definition: svgfig.py:643
void searchNeighbors(const TrajectoryStateOnSurface &tsos, const Propagator &prop, const MeasurementEstimator &est, const SubLayerCrossing &crossing, float window, std::vector< DetGroup > &result, std::vector< DetGroup > &brotherresult, bool checkClosest) const __attribute__((hot))
#define LogTrace(id)
const SubLayerCrossing & other() const
float computeWindowSize(const GeomDet *det, const TrajectoryStateOnSurface &tsos, const MeasurementEstimator &est) const __attribute__((hot))
SubLayerCrossings computeCrossings(const TrajectoryStateOnSurface &tsos, PropagationDirection propDir) const __attribute__((hot))
const SubLayerCrossing & closest() const
static void orderAndMergeTwoLevels(std::vector< DetGroup > &&one, std::vector< DetGroup > &&two, std::vector< DetGroup > &result, int firstIndex, int firstCrossed)
bool addClosest(const TrajectoryStateOnSurface &tsos, const Propagator &prop, const MeasurementEstimator &est, const SubLayerCrossing &crossing, std::vector< DetGroup > &result, std::vector< DetGroup > &brotherresult) const __attribute__((hot))
def move(src, dest)
Definition: eostools.py:511
void Phase2OTBarrelRod::searchNeighbors ( const TrajectoryStateOnSurface tsos,
const Propagator prop,
const MeasurementEstimator est,
const SubLayerCrossing crossing,
float  window,
std::vector< DetGroup > &  result,
std::vector< DetGroup > &  brotherresult,
bool  checkClosest 
) const
private

Definition at line 240 of file Phase2OTBarrelRod.cc.

References PVValHelper::add(), SubLayerCrossing::closestDetIndex(), goodZToMuMu_cfi::overlap, SubLayerCrossing::position(), SubLayerCrossing::subLayerIndex(), subRod(), subRodBrothers(), and PV3DBase< T, PVType, FrameType >::z().

Referenced by basicComponents(), and groupedCompatibleDetsV().

247  {
248  const GlobalPoint& gCrossingPos = crossing.position();
249 
250  const vector<const GeomDet*>& sRod(subRod(crossing.subLayerIndex()));
251  const vector<const GeomDet*>& sBrotherRod(subRodBrothers(crossing.subLayerIndex()));
252 
253  int closestIndex = crossing.closestDetIndex();
254  int negStartIndex = closestIndex - 1;
255  int posStartIndex = closestIndex + 1;
256 
257  if (checkClosest) { // must decide if the closest is on the neg or pos side
258  if (gCrossingPos.z() < sRod[closestIndex]->surface().position().z()) {
259  posStartIndex = closestIndex;
260  } else {
261  negStartIndex = closestIndex;
262  }
263  }
264 
265  typedef CompatibleDetToGroupAdder Adder;
266  for (int idet = negStartIndex; idet >= 0; idet--) {
267  if (!overlap(gCrossingPos, *sRod[idet], window))
268  break;
269  if (!Adder::add(*sRod[idet], tsos, prop, est, result))
270  break;
271  // If the two above checks are passed also the brother module will be added with no further checks
272  Adder::add(*sBrotherRod[idet], tsos, prop, est, brotherresult);
273  }
274  for (int idet = posStartIndex; idet < static_cast<int>(sRod.size()); idet++) {
275  if (!overlap(gCrossingPos, *sRod[idet], window))
276  break;
277  if (!Adder::add(*sRod[idet], tsos, prop, est, result))
278  break;
279  // If the two above checks are passed also the brother module will be added with no further checks
280  Adder::add(*sBrotherRod[idet], tsos, prop, est, brotherresult);
281  }
282 }
int closestDetIndex() const
const GlobalPoint & position() const
int subLayerIndex() const
T z() const
Definition: PV3DBase.h:61
def window(xmin, xmax, ymin, ymax, x=0, y=0, width=100, height=100, xlogbase=None, ylogbase=None, minusInfinity=-1000, flipx=False, flipy=True)
Definition: svgfig.py:643
const std::vector< const GeomDet * > & subRodBrothers(int ind) const
void add(std::map< std::string, TH1 * > &h, TH1 *hist)
const std::vector< const GeomDet * > & subRod(int ind) const
const std::vector<const GeomDet*>& Phase2OTBarrelRod::subRod ( int  ind) const
inlineprivate

Definition at line 66 of file Phase2OTBarrelRod.h.

References theInnerDets, and theOuterDets.

Referenced by addClosest(), and searchNeighbors().

66 { return (ind == 0 ? theInnerDets : theOuterDets); }
std::vector< const GeomDet * > theOuterDets
std::vector< const GeomDet * > theInnerDets
const std::vector<const GeomDet*>& Phase2OTBarrelRod::subRodBrothers ( int  ind) const
inlineprivate

Definition at line 68 of file Phase2OTBarrelRod.h.

References theInnerDetBrothers, and theOuterDetBrothers.

Referenced by addClosest(), and searchNeighbors().

68  {
69  return (ind == 0 ? theInnerDetBrothers : theOuterDetBrothers);
70  }
std::vector< const GeomDet * > theOuterDetBrothers
std::vector< const GeomDet * > theInnerDetBrothers

Member Data Documentation

std::vector<const GeomDet*> Phase2OTBarrelRod::theDets
private

Definition at line 73 of file Phase2OTBarrelRod.h.

Referenced by basicComponents(), and Phase2OTBarrelRod().

BinFinderType Phase2OTBarrelRod::theInnerBinFinder
private

Definition at line 82 of file Phase2OTBarrelRod.h.

Referenced by computeCrossings(), and Phase2OTBarrelRod().

std::vector<const GeomDet*> Phase2OTBarrelRod::theInnerDetBrothers
private

Definition at line 76 of file Phase2OTBarrelRod.h.

Referenced by Phase2OTBarrelRod(), and subRodBrothers().

std::vector<const GeomDet*> Phase2OTBarrelRod::theInnerDets
private

Definition at line 74 of file Phase2OTBarrelRod.h.

Referenced by Phase2OTBarrelRod(), and subRod().

ReferenceCountingPointer<Plane> Phase2OTBarrelRod::theInnerPlane
private

Definition at line 79 of file Phase2OTBarrelRod.h.

Referenced by computeCrossings(), and Phase2OTBarrelRod().

BinFinderType Phase2OTBarrelRod::theOuterBinFinder
private

Definition at line 83 of file Phase2OTBarrelRod.h.

Referenced by computeCrossings(), and Phase2OTBarrelRod().

std::vector<const GeomDet*> Phase2OTBarrelRod::theOuterDetBrothers
private

Definition at line 77 of file Phase2OTBarrelRod.h.

Referenced by Phase2OTBarrelRod(), and subRodBrothers().

std::vector<const GeomDet*> Phase2OTBarrelRod::theOuterDets
private

Definition at line 75 of file Phase2OTBarrelRod.h.

Referenced by Phase2OTBarrelRod(), and subRod().

ReferenceCountingPointer<Plane> Phase2OTBarrelRod::theOuterPlane
private

Definition at line 80 of file Phase2OTBarrelRod.h.

Referenced by computeCrossings(), and Phase2OTBarrelRod().