CMS 3D CMS Logo

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

#include <CompositeTECPetal.h>

Inheritance diagram for CompositeTECPetal:
TECPetal GeometricSearchDetWithGroups GeometricSearchDet

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
 
virtual const std::vector
< const GeometricSearchDet * > & 
components () const
 Returns basic components, if any. More...
 
 CompositeTECPetal (std::vector< const TECWedge * > &innerWedges, std::vector< const TECWedge * > &outerWedges)
 
virtual void groupedCompatibleDetsV (const TrajectoryStateOnSurface &startingState, const Propagator &prop, const MeasurementEstimator &est, std::vector< DetGroup > &result) const
 
 ~CompositeTECPetal ()
 
- Public Member Functions inherited from TECPetal
virtual const BoundDiskSectorspecificSurface () const
 
virtual const BoundSurfacesurface () const
 The surface of the GeometricSearchDet. More...
 
- Public Member Functions inherited from GeometricSearchDetWithGroups
void compatibleDetsV (const TrajectoryStateOnSurface &startingState, const Propagator &prop, const MeasurementEstimator &est, std::vector< DetWithState > &result) const
 
bool hasGroups () const
 
- Public Member Functions inherited from GeometricSearchDet
virtual std::vector< DetWithStatecompatibleDets (const TrajectoryStateOnSurface &startingState, const Propagator &prop, const MeasurementEstimator &est) const
 
 GeometricSearchDet ()
 
virtual std::vector< DetGroupgroupedCompatibleDets (const TrajectoryStateOnSurface &startingState, const Propagator &prop, const MeasurementEstimator &est) 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) const
 
SubLayerCrossings computeCrossings (const TrajectoryStateOnSurface &tsos, PropagationDirection propDir) const
 
int findBin (float R, int layer) const
 
GlobalPoint findPosition (int index, int diskSectorIndex) const
 
void searchNeighbors (const TrajectoryStateOnSurface &tsos, const Propagator &prop, const MeasurementEstimator &est, const SubLayerCrossing &crossing, float window, std::vector< DetGroup > &result, bool checkClosest) const
 
const std::vector< const
GeometricSearchDet * > & 
subLayer (int ind) const
 

Static Private Member Functions

static float computeWindowSize (const GeomDet *det, const TrajectoryStateOnSurface &tsos, const MeasurementEstimator &est)
 
static bool overlap (const GlobalPoint &gpos, const GeometricSearchDet &rod, float window)
 

Private Attributes

std::vector< float > theBackBoundaries
 
std::vector< const
GeometricSearchDet * > 
theBackComps
 
ReferenceCountingPointer
< BoundDiskSector
theBackSector
 
std::vector< const GeomDet * > theBasicComps
 
std::vector< const
GeometricSearchDet * > 
theComps
 
std::vector< float > theFrontBoundaries
 
std::vector< const
GeometricSearchDet * > 
theFrontComps
 
ReferenceCountingPointer
< BoundDiskSector
theFrontSector
 

Additional Inherited Members

- Public Types inherited from GeometricSearchDetWithGroups
typedef
GeometricSearchDet::DetWithState 
DetWithState
 
- Public Types inherited from GeometricSearchDet
typedef std::pair< const
GeomDet
*, TrajectoryStateOnSurface
DetWithState
 
typedef BoundSurface::PositionType PositionType
 
typedef BoundSurface::RotationType RotationType
 
typedef TrajectoryStateOnSurface TrajectoryState
 
- Protected Attributes inherited from TECPetal
ReferenceCountingPointer
< BoundDiskSector
theDiskSector
 
- Protected Attributes inherited from GeometricSearchDet
GeomDetCompatibilityChecker theCompatibilityChecker
 

Detailed Description

A concrete implementation for TEC petals

Definition at line 14 of file CompositeTECPetal.h.

Constructor & Destructor Documentation

CompositeTECPetal::CompositeTECPetal ( std::vector< const TECWedge * > &  innerWedges,
std::vector< const TECWedge * > &  outerWedges 
)

Definition at line 57 of file CompositeTECPetal.cc.

References details::fillBoundaries(), LogDebug, theBackBoundaries, theBackComps, theBackSector, theBasicComps, theComps, TECPetal::theDiskSector, theFrontBoundaries, theFrontComps, and theFrontSector.

58  :
59  theFrontComps(innerWedges.begin(),innerWedges.end()),
60  theBackComps(outerWedges.begin(),outerWedges.end())
61 {
62  theComps.assign(theFrontComps.begin(),theFrontComps.end());
63  theComps.insert(theComps.end(),theBackComps.begin(),theBackComps.end());
64 
67 
68 
69  for(vector<const GeometricSearchDet*>::const_iterator it=theComps.begin();
70  it!=theComps.end();it++){
71  theBasicComps.insert(theBasicComps.end(),
72  (**it).basicComponents().begin(),
73  (**it).basicComponents().end());
74  }
75 
76 
77  //the Wedge are already R ordered
78  //sort( theWedges.begin(), theWedges.end(), DetLessR());
79  //sort( theFrontWedges.begin(), theFrontWedges.end(), DetLessR() );
80  //sort( theBackWedges.begin(), theBackWedges.end(), DetLessR() );
81  vector<const TECWedge*> allWedges;
82  allWedges.assign(innerWedges.begin(),innerWedges.end());
83  allWedges.insert(allWedges.end(),outerWedges.begin(),outerWedges.end());
84 
88 
89  //--------- DEBUG INFO --------------
90  LogDebug("TkDetLayers") << "DEBUG INFO for CompositeTECPetal" ;
91 
92  for(vector<const GeometricSearchDet*>::const_iterator it=theFrontComps.begin();
93  it!=theFrontComps.end(); it++){
94  LogDebug("TkDetLayers") << "frontWedge phi,z,r: "
95  << (*it)->surface().position().phi() << " , "
96  << (*it)->surface().position().z() << " , "
97  << (*it)->surface().position().perp() ;
98  }
99 
100  for(vector<const GeometricSearchDet*>::const_iterator it=theBackComps.begin();
101  it!=theBackComps.end(); it++){
102  LogDebug("TkDetLayers") << "backWedge phi,z,r: "
103  << (*it)->surface().position().phi() << " , "
104  << (*it)->surface().position().z() << " , "
105  << (*it)->surface().position().perp() ;
106  }
107  //-----------------------------------
108 
109 
110 }
#define LogDebug(id)
std::vector< float > theFrontBoundaries
std::vector< const GeometricSearchDet * > theFrontComps
std::vector< const GeometricSearchDet * > theComps
void fillBoundaries(std::vector< const GeometricSearchDet * > const &dets, std::vector< float > &boundaries)
std::vector< const GeometricSearchDet * > theBackComps
ReferenceCountingPointer< BoundDiskSector > theFrontSector
ReferenceCountingPointer< BoundDiskSector > theBackSector
ReferenceCountingPointer< BoundDiskSector > theDiskSector
Definition: TECPetal.h:24
std::vector< const GeomDet * > theBasicComps
std::vector< float > theBackBoundaries
CompositeTECPetal::~CompositeTECPetal ( )

Definition at line 113 of file CompositeTECPetal.cc.

References i, and theComps.

113  {
114  vector<const GeometricSearchDet*>::const_iterator i;
115  for (i=theComps.begin(); i!=theComps.end(); i++) {
116  delete *i;
117  }
118 }
int i
Definition: DBlmapReader.cc:9
std::vector< const GeometricSearchDet * > theComps

Member Function Documentation

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

Definition at line 225 of file CompositeTECPetal.cc.

References CompatibleDetToGroupAdder::add(), SubLayerCrossing::closestDetIndex(), LogDebug, subLayer(), and SubLayerCrossing::subLayerIndex().

Referenced by groupedCompatibleDetsV().

230 {
231  const vector<const GeometricSearchDet*>& sub( subLayer( crossing.subLayerIndex()));
232  const GeometricSearchDet* det(sub[crossing.closestDetIndex()]);
233 
234  LogDebug("TkDetLayers")
235  << "in TECPetal, adding Wedge at r,z,phi: ("
236  << det->position().perp() << ","
237  << det->position().z() << ","
238  << det->position().phi() << ")" ;
239  LogDebug("TkDetLayers")
240  << "wedge comps size: "
241  << det->basicComponents().size();
242 
243  return CompatibleDetToGroupAdder::add( *det, tsos, prop, est, result);
244 }
#define LogDebug(id)
int closestDetIndex() const
const std::vector< const GeometricSearchDet * > & subLayer(int ind) 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)
virtual const std::vector<const GeomDet*>& CompositeTECPetal::basicComponents ( ) const
inlinevirtual

Implements GeometricSearchDet.

Definition at line 22 of file CompositeTECPetal.h.

References theBasicComps.

22 {return theBasicComps;}
std::vector< const GeomDet * > theBasicComps
pair< bool, TrajectoryStateOnSurface > CompositeTECPetal::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 122 of file CompositeTECPetal.cc.

123  {
124  edm::LogError("TkDetLayers") << "temporary dummy implementation of CompositeTECPetal::compatible()!!" ;
125  return pair<bool,TrajectoryStateOnSurface>();
126 }
virtual const std::vector<const GeometricSearchDet*>& CompositeTECPetal::components ( ) const
inlinevirtual

Returns basic components, if any.

Returns direct components, if any

Implements GeometricSearchDet.

Definition at line 24 of file CompositeTECPetal.h.

References theComps.

24 {return theComps;}
std::vector< const GeometricSearchDet * > theComps
SubLayerCrossings CompositeTECPetal::computeCrossings ( const TrajectoryStateOnSurface tsos,
PropagationDirection  propDir 
) const
private

Definition at line 172 of file CompositeTECPetal.cc.

References findBin(), findPosition(), TrajectoryStateOnSurface::globalMomentum(), TrajectoryStateOnSurface::globalPosition(), LogDebug, perp(), rho, theBackSector, theFrontSector, and TrajectoryStateOnSurface::transverseCurvature().

Referenced by groupedCompatibleDetsV().

174 {
175  double rho( startingState.transverseCurvature());
176 
177  HelixPlaneCrossing::PositionType startPos( startingState.globalPosition() );
178  HelixPlaneCrossing::DirectionType startDir( startingState.globalMomentum() );
179  HelixForwardPlaneCrossing crossing(startPos,startDir,rho,propDir);
180  pair<bool,double> frontPath = crossing.pathLength( *theFrontSector);
181 
182  if (!frontPath.first) return SubLayerCrossings();
183 
184  GlobalPoint gFrontPoint(crossing.position(frontPath.second));
185  LogDebug("TkDetLayers")
186  << "in TECPetal,front crossing : r,z,phi: ("
187  << gFrontPoint.perp() << ","
188  << gFrontPoint.z() << ","
189  << gFrontPoint.phi() << ")";
190 
191 
192  int frontIndex = findBin(gFrontPoint.perp(),0);
193  float frontDist = fabs( findPosition(frontIndex,0).perp() - gFrontPoint.perp());
194  SubLayerCrossing frontSLC( 0, frontIndex, gFrontPoint);
195 
196 
197 
198  pair<bool,double> backPath = crossing.pathLength( *theBackSector);
199 
200  if (!backPath.first) return SubLayerCrossings();
201 
202 
203  GlobalPoint gBackPoint( crossing.position(backPath.second));
204  LogDebug("TkDetLayers")
205  << "in TECPetal,back crossing r,z,phi: ("
206  << gBackPoint.perp() << ","
207  << gBackPoint.z() << ","
208  << gBackPoint.phi() << ")" ;
209 
210  int backIndex = findBin(gBackPoint.perp(),1);
211  float backDist = fabs( findPosition(backIndex,1).perp() - gBackPoint.perp());
212 
213  SubLayerCrossing backSLC( 1, backIndex, gBackPoint);
214 
215 
216  // 0ss: frontDisk has index=0, backDisk has index=1
217  if (frontDist < backDist) {
218  return SubLayerCrossings( frontSLC, backSLC, 0);
219  }
220  else {
221  return SubLayerCrossings( backSLC, frontSLC, 1);
222  }
223 }
#define LogDebug(id)
int findBin(float R, int layer) const
Definition: DDAxes.h:10
ReferenceCountingPointer< BoundDiskSector > theFrontSector
GlobalPoint findPosition(int index, int diskSectorIndex) const
ReferenceCountingPointer< BoundDiskSector > theBackSector
T perp() const
Magnitude of transverse component.
float CompositeTECPetal::computeWindowSize ( const GeomDet det,
const TrajectoryStateOnSurface tsos,
const MeasurementEstimator est 
)
staticprivate

Definition at line 322 of file CompositeTECPetal.cc.

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

Referenced by groupedCompatibleDetsV().

325 {
326  return est.maximalLocalDisplacement(tsos, det->surface()).y();
327 }
virtual Local2DVector maximalLocalDisplacement(const TrajectoryStateOnSurface &ts, const BoundPlane &plane) const
virtual const BoundPlane & surface() const
The nominal surface of the GeomDet.
Definition: GeomDet.h:37
int CompositeTECPetal::findBin ( float  R,
int  layer 
) const
private

Definition at line 330 of file CompositeTECPetal.cc.

References details::findBin(), theBackBoundaries, and theFrontBoundaries.

Referenced by computeCrossings().

331 {
332  return details::findBin(diskSectorType==0 ? theFrontBoundaries : theBackBoundaries,R);
333 }
std::vector< float > theFrontBoundaries
int findBin(std::vector< float > const &boundaries, float r)
std::vector< float > theBackBoundaries
GlobalPoint CompositeTECPetal::findPosition ( int  index,
int  diskSectorIndex 
) const
private

Definition at line 338 of file CompositeTECPetal.cc.

References theBackComps, and theFrontComps.

Referenced by computeCrossings().

339 {
340  vector<const GeometricSearchDet*> const & diskSector = diskSectorType == 0 ? theFrontComps : theBackComps;
341  return (diskSector[index])->position();
342 }
std::vector< const GeometricSearchDet * > theFrontComps
std::vector< const GeometricSearchDet * > theBackComps
void CompositeTECPetal::groupedCompatibleDetsV ( const TrajectoryStateOnSurface startingState,
const Propagator prop,
const MeasurementEstimator est,
std::vector< DetGroup > &  result 
) const
virtual

Reimplemented from GeometricSearchDet.

Definition at line 130 of file CompositeTECPetal.cc.

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

133  {
134 
135  vector<DetGroup> closestResult;
136  SubLayerCrossings crossings;
137  crossings = computeCrossings( tsos, prop.propagationDirection());
138  if(! crossings.isValid()) return;
139 
140  addClosest( tsos, prop, est, crossings.closest(), closestResult);
141  LogDebug("TkDetLayers") << "in TECPetal, closestResult.size(): "<< closestResult.size();
142 
143  if (closestResult.empty()){
144  vector<DetGroup> nextResult;
145  addClosest( tsos, prop, est, crossings.other(), nextResult);
146  LogDebug("TkDetLayers") << "in TECPetal, nextResult.size(): "<< nextResult.size() ;
147  if(nextResult.empty()) return;
148 
149  DetGroupElement nextGel( nextResult.front().front());
150  int crossingSide = LayerCrossingSide().endcapSide( nextGel.trajectoryState(), prop);
151  DetGroupMerger::orderAndMergeTwoLevels( closestResult, nextResult, result,
152  crossings.closestIndex(), crossingSide);
153  } else {
154 
155  DetGroupElement closestGel( closestResult.front().front());
156  float window = computeWindowSize( closestGel.det(), closestGel.trajectoryState(), est);
157 
158  searchNeighbors( tsos, prop, est, crossings.closest(), window,
159  closestResult, false);
160 
161  vector<DetGroup> nextResult;
162  searchNeighbors( tsos, prop, est, crossings.other(), window,
163  nextResult, true);
164 
165  int crossingSide = LayerCrossingSide().endcapSide( closestGel.trajectoryState(), prop);
166  DetGroupMerger::orderAndMergeTwoLevels( closestResult, nextResult, result,
167  crossings.closestIndex(), crossingSide);
168  }
169 }
#define LogDebug(id)
static void orderAndMergeTwoLevels(const std::vector< DetGroup > &one, const std::vector< DetGroup > &two, std::vector< DetGroup > &result, int firstIndex, int firstCrossed)
def window
Definition: svgfig.py:642
SubLayerCrossings computeCrossings(const TrajectoryStateOnSurface &tsos, PropagationDirection propDir) const
virtual PropagationDirection propagationDirection() const
Definition: Propagator.h:143
int closestIndex() const
void searchNeighbors(const TrajectoryStateOnSurface &tsos, const Propagator &prop, const MeasurementEstimator &est, const SubLayerCrossing &crossing, float window, std::vector< DetGroup > &result, bool checkClosest) const
int endcapSide(const TrajectoryStateOnSurface &startingState, const Propagator &prop) const
tuple result
Definition: query.py:137
static float computeWindowSize(const GeomDet *det, const TrajectoryStateOnSurface &tsos, const MeasurementEstimator &est)
const SubLayerCrossing & other() const
bool addClosest(const TrajectoryStateOnSurface &tsos, const Propagator &prop, const MeasurementEstimator &est, const SubLayerCrossing &crossing, std::vector< DetGroup > &result) const
const SubLayerCrossing & closest() const
bool CompositeTECPetal::overlap ( const GlobalPoint gpos,
const GeometricSearchDet rod,
float  window 
)
staticprivate

Definition at line 296 of file CompositeTECPetal.cc.

References BoundDiskSector::bounds(), BoundDiskSector::innerRadius(), max(), BoundDiskSector::outerRadius(), PV3DBase< T, PVType, FrameType >::perp(), GloballyPositioned< T >::position(), GeometricSearchDet::surface(), DiskSectorBounds::thickness(), and PV3DBase< T, PVType, FrameType >::z().

Referenced by searchNeighbors().

297 {
298  // this method is just a duplication of overlapInR
299  // adapeted for groupedCompatibleDets() needs
300 
301  // assume "fixed theta window", i.e. margin in local y = r is changing linearly with z
302  float tsRadius = gpos.perp();
303  float thetamin = ( max((float)0.,tsRadius-ymax))/(fabs(gpos.z())+10.); // add 10 cm contingency
304  float thetamax = ( tsRadius + ymax)/(fabs(gpos.z())-10.);
305 
306  const BoundDiskSector& wedgeSector = static_cast<const BoundDiskSector&>( gsdet.surface());
307  float wedgeMinZ = fabs( wedgeSector.position().z()) - 0.5*wedgeSector.bounds().thickness();
308  float wedgeMaxZ = fabs( wedgeSector.position().z()) + 0.5*wedgeSector.bounds().thickness();
309  float thetaWedgeMin = wedgeSector.innerRadius()/ wedgeMaxZ;
310  float thetaWedgeMax = wedgeSector.outerRadius()/ wedgeMinZ;
311 
312  // do the theta regions overlap ?
313 
314  return !( thetamin > thetaWedgeMax || thetaWedgeMin > thetamax);
315 
316 }
virtual float thickness() const
float innerRadius() const
T perp() const
Definition: PV3DBase.h:66
DiskSectorBounds const & bounds() const
const T & max(const T &a, const T &b)
float outerRadius() const
T z() const
Definition: PV3DBase.h:58
const PositionType & position() const
void CompositeTECPetal::searchNeighbors ( const TrajectoryStateOnSurface tsos,
const Propagator prop,
const MeasurementEstimator est,
const SubLayerCrossing crossing,
float  window,
std::vector< DetGroup > &  result,
bool  checkClosest 
) const
private

Definition at line 249 of file CompositeTECPetal.cc.

References Clusterizer1DCommons::add(), SubLayerCrossing::closestDetIndex(), overlap(), PV3DBase< T, PVType, FrameType >::perp(), SubLayerCrossing::position(), subLayer(), SubLayerCrossing::subLayerIndex(), theBackComps, and theFrontComps.

Referenced by groupedCompatibleDetsV().

256 {
257  GlobalPoint gCrossingPos = crossing.position();
258 
259  const vector<const GeometricSearchDet*>& sLayer( subLayer( crossing.subLayerIndex()));
260 
261  int closestIndex = crossing.closestDetIndex();
262  int negStartIndex = closestIndex-1;
263  int posStartIndex = closestIndex+1;
264 
265  if (checkClosest) { // must decide if the closest is on the neg or pos side
266  if ( gCrossingPos.perp() < sLayer[closestIndex]->position().perp() ) {
267  posStartIndex = closestIndex;
268  }
269  else {
270  negStartIndex = closestIndex;
271  }
272  }
273 
274 
275  //const BinFinderType& binFinder = (crossing.subLayerIndex()==0 ? theFrontBinFinder : theBackBinFinder);
276  int theSize = crossing.subLayerIndex()==0 ? theFrontComps.size() : theBackComps.size();
277 
278  typedef CompatibleDetToGroupAdder Adder;
279  for (int idet=negStartIndex; idet >= 0; idet--) {
280  //if(idet<0 || idet>= theSize) {edm::LogInfo(TkDetLayers) << "===== error! gone out vector bounds.idet: " << idet ;exit;}
281  const GeometricSearchDet & neighborWedge = *sLayer[idet];
282  if (!overlap( gCrossingPos, neighborWedge, window)) break; // --- to check
283  if (!Adder::add( neighborWedge, tsos, prop, est, result)) break;
284  // maybe also add shallow crossing angle test here???
285  }
286  for (int idet=posStartIndex; idet <theSize; idet++) {
287  //if(idet<0 || idet>= theSize) {edm::LogInfo(TkDetLayers) << "===== error! gone out vector bounds.idet: " << idet ;exit;}
288  const GeometricSearchDet & neighborWedge = *sLayer[idet];
289  if (!overlap( gCrossingPos, neighborWedge, window)) break; // ---- to check
290  if (!Adder::add( neighborWedge, tsos, prop, est, result)) break;
291  // maybe also add shallow crossing angle test here???
292  }
293 }
def window
Definition: svgfig.py:642
std::vector< const GeometricSearchDet * > theFrontComps
T perp() const
Definition: PV3DBase.h:66
int closestDetIndex() const
const std::vector< const GeometricSearchDet * > & subLayer(int ind) const
void add(const std::vector< const T * > &source, std::vector< const T * > &dest)
static bool overlap(const GlobalPoint &gpos, const GeometricSearchDet &rod, float window)
const GlobalPoint & position() const
int subLayerIndex() const
tuple result
Definition: query.py:137
std::vector< const GeometricSearchDet * > theBackComps
const std::vector<const GeometricSearchDet*>& CompositeTECPetal::subLayer ( int  ind) const
inlineprivate

Definition at line 70 of file CompositeTECPetal.h.

References theBackComps, and theFrontComps.

Referenced by addClosest(), and searchNeighbors().

70  {
71  return (ind==0 ? theFrontComps : theBackComps);
72  }
std::vector< const GeometricSearchDet * > theFrontComps
std::vector< const GeometricSearchDet * > theBackComps

Member Data Documentation

std::vector<float> CompositeTECPetal::theBackBoundaries
private

Definition at line 82 of file CompositeTECPetal.h.

Referenced by CompositeTECPetal(), and findBin().

std::vector<const GeometricSearchDet*> CompositeTECPetal::theBackComps
private

Definition at line 78 of file CompositeTECPetal.h.

Referenced by CompositeTECPetal(), findPosition(), searchNeighbors(), and subLayer().

ReferenceCountingPointer<BoundDiskSector> CompositeTECPetal::theBackSector
private

Definition at line 85 of file CompositeTECPetal.h.

Referenced by CompositeTECPetal(), and computeCrossings().

std::vector<const GeomDet*> CompositeTECPetal::theBasicComps
private

Definition at line 79 of file CompositeTECPetal.h.

Referenced by basicComponents(), and CompositeTECPetal().

std::vector<const GeometricSearchDet*> CompositeTECPetal::theComps
private

Definition at line 76 of file CompositeTECPetal.h.

Referenced by components(), CompositeTECPetal(), and ~CompositeTECPetal().

std::vector<float> CompositeTECPetal::theFrontBoundaries
private

Definition at line 81 of file CompositeTECPetal.h.

Referenced by CompositeTECPetal(), and findBin().

std::vector<const GeometricSearchDet*> CompositeTECPetal::theFrontComps
private

Definition at line 77 of file CompositeTECPetal.h.

Referenced by CompositeTECPetal(), findPosition(), searchNeighbors(), and subLayer().

ReferenceCountingPointer<BoundDiskSector> CompositeTECPetal::theFrontSector
private

Definition at line 84 of file CompositeTECPetal.h.

Referenced by CompositeTECPetal(), and computeCrossings().