CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Types | Public Member Functions | Private Member Functions | Private Attributes
Phase2OTBarrelRod Class Reference

#include <Phase2OTBarrelRod.h>

Inheritance diagram for Phase2OTBarrelRod:
DetRod GeometricSearchDet

Public Types

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

Public Member Functions

virtual const std::vector
< const GeomDet * > & 
basicComponents () const
 
virtual std::pair< bool,
TrajectoryStateOnSurface
compatible (const TrajectoryStateOnSurface &ts, const Propagator &, const MeasurementEstimator &) const __attribute__((cold))
 
virtual const std::vector
< const GeometricSearchDet * > & 
components () const __attribute__((cold))
 Returns basic components, if any. More...
 
void groupedCompatibleDetsV (const TrajectoryStateOnSurface &tsos, const Propagator &prop, const MeasurementEstimator &est, std::vector< DetGroup > &result) const __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 () __attribute__((cold))
 
- Public Member Functions inherited from DetRod
virtual const PlanespecificSurface () const
 Return the rod surface as a Plane. More...
 
virtual const BoundSurfacesurface () const
 The surface of the GeometricSearchDet. More...
 
virtual ~DetRod ()
 
- 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::PositionType
position () 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 16 of file Phase2OTBarrelRod.h.

Member Typedef Documentation

Definition at line 18 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 30 of file Phase2OTBarrelRod.cc.

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

33  :
34  DetRod(true),
35  theInnerDets(innerDets),theOuterDets(outerDets),theInnerDetBrothers(innerDetBrothers),theOuterDetBrothers(outerDetBrothers)
36 {
37  theDets.assign(theInnerDets.begin(),theInnerDets.end());
38  theDets.insert(theDets.end(),theOuterDets.begin(),theOuterDets.end());
39  theDets.insert(theDets.end(),theInnerDetBrothers.begin(),theInnerDetBrothers.end());
40  theDets.insert(theDets.end(),theOuterDetBrothers.begin(),theOuterDetBrothers.end());
41 
42 
43  RodPlaneBuilderFromDet planeBuilder;
44  setPlane( planeBuilder( theDets));
45  theInnerPlane = planeBuilder( theInnerDets);
46  theOuterPlane = planeBuilder( theOuterDets);
47 
48 
49  sort(theDets.begin(),theDets.end(),DetZLess()); // this can be dangerous because of the pt modules. On the other hand theDets is never used
50  // shouldn't the modules be already sorted in Z?
51  sort(theInnerDets.begin(),theInnerDets.end(),DetZLess());
52  sort(theOuterDets.begin(),theOuterDets.end(),DetZLess());
53  sort(theInnerDetBrothers.begin(),theInnerDetBrothers.end(),DetZLess());
54  sort(theOuterDetBrothers.begin(),theOuterDetBrothers.end(),DetZLess());
57 
58 
59 
60  LogDebug("TkDetLayers") << "==== DEBUG Phase2OTBarrelRod =====" ;
61  for (vector<const GeomDet*>::const_iterator i=theInnerDets.begin();
62  i != theInnerDets.end(); i++){
63  LogDebug("TkDetLayers") << "inner Phase2OTBarrelRod's Det pos z,perp,eta,phi: "
64  << (**i).position().z() << " , "
65  << (**i).position().perp() << " , "
66  << (**i).position().eta() << " , "
67  << (**i).position().phi() ;
68  }
69 
70  for (vector<const GeomDet*>::const_iterator i=theOuterDets.begin();
71  i != theOuterDets.end(); i++){
72  LogDebug("TkDetLayers") << "outer Phase2OTBarrelRod's Det pos z,perp,eta,phi: "
73  << (**i).position().z() << " , "
74  << (**i).position().perp() << " , "
75  << (**i).position().eta() << " , "
76  << (**i).position().phi() ;
77  }
78  LogDebug("TkDetLayers") << "==== end DEBUG Phase2OTBarrelRod =====" ;
79 
80 
81 
82 }
#define LogDebug(id)
int i
Definition: DBlmapReader.cc:9
BinFinderType theOuterBinFinder
std::vector< const GeomDet * > theDets
BinFinderType theInnerBinFinder
std::vector< const GeomDet * > theOuterDetBrothers
GenericBinFinderInZ< float, GeomDet > BinFinderType
Definition: DetRod.h:13
ReferenceCountingPointer< Plane > theOuterPlane
void setPlane(Plane *plane)
Set the rod&#39;s plane.
Definition: DetRod.h:32
ReferenceCountingPointer< Plane > theInnerPlane
std::vector< const GeomDet * > theOuterDets
std::vector< const GeomDet * > theInnerDets
std::vector< const GeomDet * > theInnerDetBrothers
Phase2OTBarrelRod::~Phase2OTBarrelRod ( )

Definition at line 84 of file Phase2OTBarrelRod.cc.

84  {
85 
86 }

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 203 of file Phase2OTBarrelRod.cc.

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

Referenced by groupedCompatibleDetsV().

209 {
210 
211  const vector<const GeomDet*>& sRod( subRod( crossing.subLayerIndex()));
212  bool firstgroup = CompatibleDetToGroupAdder::add( *sRod[crossing.closestDetIndex()],
213  tsos, prop, est, result);
214  // it assumes that the closestDetIndex is ok also for the brother detectors: the crossing is NOT recomputed
215  const vector<const GeomDet*>& sRodBrothers( subRodBrothers( crossing.subLayerIndex()));
216  bool brothergroup = CompatibleDetToGroupAdder::add( *sRodBrothers[crossing.closestDetIndex()],
217  tsos, prop, est, brotherresult);
218 
219  return firstgroup || brothergroup;
220 }
int closestDetIndex() const
int subLayerIndex() const
tuple result
Definition: query.py:137
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
virtual const std::vector<const GeomDet*>& Phase2OTBarrelRod::basicComponents ( ) const
inlinevirtual

Implements GeometricSearchDet.

Definition at line 28 of file Phase2OTBarrelRod.h.

References theDets.

28 {return theDets;}
std::vector< const GeomDet * > theDets
pair< bool, TrajectoryStateOnSurface > Phase2OTBarrelRod::compatible ( const TrajectoryStateOnSurface ts,
const Propagator ,
const MeasurementEstimator  
) const
virtual

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 95 of file Phase2OTBarrelRod.cc.

96  {
97  edm::LogError("TkDetLayers") << "temporary dummy implementation of Phase2OTBarrelRod::compatible()!!" ;
98  return pair<bool,TrajectoryStateOnSurface>();
99 }
const vector< const GeometricSearchDet * > & Phase2OTBarrelRod::components ( ) const
virtual

Returns basic components, if any.

Returns direct components, if any

Implements GeometricSearchDet.

Definition at line 90 of file Phase2OTBarrelRod.cc.

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

Definition at line 164 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 groupedCompatibleDetsV().

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

Definition at line 223 of file Phase2OTBarrelRod.cc.

References MeasurementEstimator::maximalLocalDisplacement(), GeomDet::surface(), and y.

Referenced by groupedCompatibleDetsV().

226 {
227  return
228  est.maximalLocalDisplacement(tsos, det->surface()).y();
229 }
const Plane & surface() const
The nominal surface of the GeomDet.
Definition: GeomDet.h:40
virtual Local2DVector maximalLocalDisplacement(const TrajectoryStateOnSurface &ts, const Plane &plane) const
void Phase2OTBarrelRod::groupedCompatibleDetsV ( const TrajectoryStateOnSurface tsos,
const Propagator prop,
const MeasurementEstimator est,
std::vector< DetGroup > &  result 
) const
virtual

Reimplemented from GeometricSearchDet.

Definition at line 106 of file Phase2OTBarrelRod.cc.

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

109  {
110 
111  SubLayerCrossings crossings;
112  crossings = computeCrossings( tsos, prop.propagationDirection());
113  if(! crossings.isValid()) return;
114 
115  std::vector<DetGroup> closestResult;
116  std::vector<DetGroup> closestBrotherResult;
117  addClosest( tsos, prop, est, crossings.closest(), closestResult, closestBrotherResult);
118  if (closestResult.empty()){
119  std::vector<DetGroup> nextResult;
120  std::vector<DetGroup> nextBrotherResult;
121  addClosest( tsos, prop, est, crossings.other(), nextResult, nextBrotherResult);
122  if(nextResult.empty()) return;
123 
124  DetGroupElement nextGel( nextResult.front().front());
125  int crossingSide = LayerCrossingSide().barrelSide( nextGel.trajectoryState(), prop);
126  std::vector<DetGroup> closestCompleteResult;
127  DetGroupMerger::orderAndMergeTwoLevels(std::move(closestResult),std::move(closestBrotherResult),closestCompleteResult,
128  0, crossingSide);
129  std::vector<DetGroup> nextCompleteResult;
130  DetGroupMerger::orderAndMergeTwoLevels(std::move(nextResult),std::move(nextBrotherResult),nextCompleteResult,
131  0, crossingSide);
132 
133  DetGroupMerger::orderAndMergeTwoLevels( std::move(closestCompleteResult), std::move(nextCompleteResult), result,
134  crossings.closestIndex(), crossingSide);
135  } else {
136 
137  DetGroupElement closestGel( closestResult.front().front());
138  int crossingSide = LayerCrossingSide().barrelSide( closestGel.trajectoryState(), prop);
139  float window = computeWindowSize( closestGel.det(), closestGel.trajectoryState(), est);
140 
141  searchNeighbors( tsos, prop, est, crossings.closest(), window,
142  closestResult, closestBrotherResult, false);
143 
144  std::vector<DetGroup> closestCompleteResult;
145  DetGroupMerger::orderAndMergeTwoLevels(std::move(closestResult),std::move(closestBrotherResult),closestCompleteResult,
146  0, crossingSide);
147 
148  std::vector<DetGroup> nextResult;
149  std::vector<DetGroup> nextBrotherResult;
150  searchNeighbors( tsos, prop, est, crossings.other(), window,
151  nextResult, nextBrotherResult, true);
152 
153  std::vector<DetGroup> nextCompleteResult;
154  DetGroupMerger::orderAndMergeTwoLevels(std::move(nextResult),std::move(nextBrotherResult),nextCompleteResult,
155  0, crossingSide);
156 
157  DetGroupMerger::orderAndMergeTwoLevels( std::move(closestCompleteResult), std::move(nextCompleteResult), result,
158  crossings.closestIndex(), crossingSide);
159  }
160 }
def window
Definition: svgfig.py:642
static int barrelSide(const TrajectoryStateOnSurface &startingState, const Propagator &prop)
returns 0 if barrel layer crossed from inside, 1 if from outside
virtual PropagationDirection propagationDirection() const
Definition: Propagator.h:155
int closestIndex() const
tuple result
Definition: query.py:137
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 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))
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 263 of file Phase2OTBarrelRod.cc.

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

Referenced by groupedCompatibleDetsV().

271 {
272  GlobalPoint gCrossingPos = crossing.position();
273 
274  const vector<const GeomDet*>& sRod( subRod( crossing.subLayerIndex()));
275  const vector<const GeomDet*>& sBrotherRod( subRodBrothers( crossing.subLayerIndex()));
276 
277  int closestIndex = crossing.closestDetIndex();
278  int negStartIndex = closestIndex-1;
279  int posStartIndex = closestIndex+1;
280 
281  if (checkClosest) { // must decide if the closest is on the neg or pos side
282  if (gCrossingPos.z() < sRod[closestIndex]->surface().position().z()) {
283  posStartIndex = closestIndex;
284  }
285  else {
286  negStartIndex = closestIndex;
287  }
288  }
289 
290  typedef CompatibleDetToGroupAdder Adder;
291  for (int idet=negStartIndex; idet >= 0; idet--) {
292  if (!overlap( gCrossingPos, *sRod[idet], window)) break;
293  if (!Adder::add( *sRod[idet], tsos, prop, est, result)) break;
294  // If the two above checks are passed also the brother module will be added with no further checks
295  Adder::add( *sBrotherRod[idet], tsos, prop, est, brotherresult);
296  }
297  for (int idet=posStartIndex; idet < static_cast<int>(sRod.size()); idet++) {
298  if (!overlap( gCrossingPos, *sRod[idet], window)) break;
299  if (!Adder::add( *sRod[idet], tsos, prop, est, result)) break;
300  // If the two above checks are passed also the brother module will be added with no further checks
301  Adder::add( *sBrotherRod[idet], tsos, prop, est, brotherresult);
302  }
303 }
def window
Definition: svgfig.py:642
int closestDetIndex() const
void add(const std::vector< const T * > &source, std::vector< const T * > &dest)
bool overlap(const reco::Muon &muon1, const reco::Muon &muon2, double pullX=1.0, double pullY=1.0, bool checkAdjacentChambers=false)
const GlobalPoint & position() const
int subLayerIndex() const
T z() const
Definition: PV3DBase.h:64
tuple result
Definition: query.py:137
const std::vector< const GeomDet * > & subRodBrothers(int ind) const
const std::vector< const GeomDet * > & subRod(int ind) const
const std::vector<const GeomDet*>& Phase2OTBarrelRod::subRod ( int  ind) const
inlineprivate

Definition at line 71 of file Phase2OTBarrelRod.h.

References theInnerDets, and theOuterDets.

Referenced by addClosest(), and searchNeighbors().

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

Definition at line 75 of file Phase2OTBarrelRod.h.

References theInnerDetBrothers, and theOuterDetBrothers.

Referenced by addClosest(), and searchNeighbors().

75  {
76  return (ind==0 ? theInnerDetBrothers : theOuterDetBrothers);
77  }
std::vector< const GeomDet * > theOuterDetBrothers
std::vector< const GeomDet * > theInnerDetBrothers

Member Data Documentation

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

Definition at line 81 of file Phase2OTBarrelRod.h.

Referenced by basicComponents(), and Phase2OTBarrelRod().

BinFinderType Phase2OTBarrelRod::theInnerBinFinder
private

Definition at line 90 of file Phase2OTBarrelRod.h.

Referenced by computeCrossings(), and Phase2OTBarrelRod().

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

Definition at line 84 of file Phase2OTBarrelRod.h.

Referenced by Phase2OTBarrelRod(), and subRodBrothers().

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

Definition at line 82 of file Phase2OTBarrelRod.h.

Referenced by Phase2OTBarrelRod(), and subRod().

ReferenceCountingPointer<Plane> Phase2OTBarrelRod::theInnerPlane
private

Definition at line 87 of file Phase2OTBarrelRod.h.

Referenced by computeCrossings(), and Phase2OTBarrelRod().

BinFinderType Phase2OTBarrelRod::theOuterBinFinder
private

Definition at line 91 of file Phase2OTBarrelRod.h.

Referenced by computeCrossings(), and Phase2OTBarrelRod().

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

Definition at line 85 of file Phase2OTBarrelRod.h.

Referenced by Phase2OTBarrelRod(), and subRodBrothers().

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

Definition at line 83 of file Phase2OTBarrelRod.h.

Referenced by Phase2OTBarrelRod(), and subRod().

ReferenceCountingPointer<Plane> Phase2OTBarrelRod::theOuterPlane
private

Definition at line 88 of file Phase2OTBarrelRod.h.

Referenced by computeCrossings(), and Phase2OTBarrelRod().