CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Static Public Member Functions | Private Member Functions | Friends
MuonTransientTrackingRecHit Class Referencefinal

#include <MuonTransientTrackingRecHit.h>

Inheritance diagram for MuonTransientTrackingRecHit:
GenericTransientTrackingRecHit TValidTrackingRecHit TrackingRecHit

Public Types

typedef std::vector< ConstMuonRecHitPointerConstMuonRecHitContainer
 
using ConstMuonRecHitPointer = std::shared_ptr< MuonTransientTrackingRecHit const >
 
typedef std::vector< MuonRecHitPointerMuonRecHitContainer
 
using MuonRecHitPointer = std::shared_ptr< MuonTransientTrackingRecHit >
 
- Public Types inherited from GenericTransientTrackingRecHit
typedef TrackingRecHit::Type Type
 
- Public Types inherited from TrackingRecHit
typedef std::vector< ConstRecHitPointerConstRecHitContainer
 
using ConstRecHitPointer = std::shared_ptr< TrackingRecHit const >
 
typedef unsigned int id_type
 
typedef std::vector< ConstRecHitPointerRecHitContainer
 
using RecHitPointer = std::shared_ptr< TrackingRecHit const >
 
enum  SharedInputType { all, some }
 definition of equality via shared input More...
 
enum  Type {
  valid = 0, missing = 1, inactive = 2, bad = 3,
  missing_inner = 4, missing_outer = 5, inactive_inner = 6, inactive_outer = 7
}
 

Public Member Functions

virtual double chi2 () const
 Chi square of the fit for segments, else 0. More...
 
virtual int degreesOfFreedom () const
 Degrees of freedom for segments, else 0. More...
 
virtual GlobalVector globalDirection () const
 Direction in 3D for segments, otherwise (0,0,0) More...
 
virtual GlobalError globalDirectionError () const
 Error on the global direction. More...
 
void invalidateHit ()
 
bool isCSC () const
 if this rec hit is a CSC rec hit More...
 
bool isDT () const
 if this rec hit is a DT rec hit More...
 
bool isGEM () const
 if this rec hit is a GEM rec hit More...
 
bool isME0 () const
 if this rec hit is a ME0 rec hit More...
 
bool isRPC () const
 if this rec hit is a RPC rec hit More...
 
virtual LocalVector localDirection () const
 Direction in 3D for segments, otherwise (0,0,0) More...
 
virtual LocalError localDirectionError () const
 Error on the local direction. More...
 
AlgebraicSymMatrix parametersError () const override
 
ConstRecHitContainer transientHits () const override
 return the sub components of this transient rechit More...
 
 ~MuonTransientTrackingRecHit () override
 
- Public Member Functions inherited from GenericTransientTrackingRecHit
bool canImproveWithTrack () const override
 
TrackingRecHitcloneHit () const override
 
int dimension () const override
 
const TrackingRecHithit () const override
 
LocalPoint localPosition () const override
 
LocalError localPositionError () const override
 
AlgebraicVector parameters () const override
 
AlgebraicSymMatrix parametersError () const override
 
AlgebraicMatrix projectionMatrix () const override
 
std::vector< const TrackingRecHit * > recHits () const override
 Access to component RecHits (if any) More...
 
std::vector< TrackingRecHit * > recHits () override
 Non-const access to component RecHits (if any) More...
 
 ~GenericTransientTrackingRecHit () override
 
- Public Member Functions inherited from TValidTrackingRecHit
bool canImproveWithTrack () const override
 
TrackingRecHitcloneHit () const override
 
virtual float clusterProbability () const
 cluster probability, overloaded by pixel rechits. More...
 
float errorGlobalR () const final
 
float errorGlobalRPhi () const final
 
float errorGlobalZ () const final
 
GlobalPoint globalPosition () const final
 
GlobalError globalPositionError () const final
 
TrackingRecHitGlobalState globalState () const
 
const Surfacesurface () const final
 
 TValidTrackingRecHit (const GeomDet &geom)
 
template<typename... Args>
 TValidTrackingRecHit (Args &&... args)
 
- Public Member Functions inherited from TrackingRecHit
RecHitPointer cloneForFit (const GeomDet &idet) const
 
virtual RecHitPointer cloneSH () const
 
const GeomDetdet () const
 
virtual const GeomDetUnitdetUnit () const
 
DetId geographicalId () const
 
virtual void getKfComponents (KfComponentsHolder &holder) const
 
unsigned int getRTTI () const
 
Type getType () const
 
virtual bool hasPositionAndError () const
 to be redefined by daughter class More...
 
bool isValid () const
 
id_type rawId () const
 
virtual void recHitsV (std::vector< const TrackingRecHit *> &) const
 
virtual void recHitsV (std::vector< TrackingRecHit *> &)
 
virtual void setDet (const GeomDet &idet)
 
virtual bool sharesInput (const TrackingRecHit *other, SharedInputType what) const
 
 TrackingRecHit (DetId id, Type type=valid)
 
 TrackingRecHit (id_type id=0, Type type=valid)
 
 TrackingRecHit (DetId id, unsigned int rt, Type type=valid)
 
 TrackingRecHit (const GeomDet &idet, Type type=valid)
 
 TrackingRecHit (const GeomDet &idet, unsigned int rt, Type type=valid)
 
 TrackingRecHit (const GeomDet &idet, TrackingRecHit const &rh)
 
Type type () const
 
virtual float weight () const
 
virtual ~TrackingRecHit ()
 

Static Public Member Functions

static RecHitPointer build (const GeomDet *geom, const TrackingRecHit *rh)
 FIXME virtual ConstMuonRecHitContainer specificTransientHits() const;. More...
 
static MuonRecHitPointer specificBuild (const GeomDet *geom, const TrackingRecHit *rh)
 
- Static Public Member Functions inherited from GenericTransientTrackingRecHit
static RecHitPointer build (const GeomDet *geom, const TrackingRecHit *rh)
 

Private Member Functions

MuonTransientTrackingRecHitclone () const override
 
 MuonTransientTrackingRecHit (const GeomDet *geom, const TrackingRecHit *rh)
 Construct from a TrackingRecHit and its GeomDet. More...
 
 MuonTransientTrackingRecHit (const MuonTransientTrackingRecHit &other)
 Copy ctor. More...
 

Friends

class kkkwwwxxxyyyzzz
 

Additional Inherited Members

- Static Public Attributes inherited from TrackingRecHit
static const int rttiShift = 24
 
static const int typeMask = 0xf
 
- Protected Member Functions inherited from GenericTransientTrackingRecHit
 GenericTransientTrackingRecHit (const GeomDet &geom, const TrackingRecHit &rh)
 
 GenericTransientTrackingRecHit (const GeomDet &geom, TrackingRecHit *rh)
 for derived classes convenience, does not clone! More...
 
 GenericTransientTrackingRecHit (const GenericTransientTrackingRecHit &other)
 
- Protected Member Functions inherited from TrackingRecHit
void setId (id_type iid)
 
void setRTTI (unsigned int rt)
 
void setType (Type ttype)
 
- Protected Attributes inherited from GenericTransientTrackingRecHit
TrackingRecHittrackingRecHit_
 

Detailed Description

A TransientTrackingRecHit for muons.

Author
C. Liu Purdue University

by C. Calabria INFN & Universita  Bari

Definition at line 19 of file MuonTransientTrackingRecHit.h.

Member Typedef Documentation

◆ ConstMuonRecHitContainer

Definition at line 27 of file MuonTransientTrackingRecHit.h.

◆ ConstMuonRecHitPointer

Definition at line 22 of file MuonTransientTrackingRecHit.h.

◆ MuonRecHitContainer

Definition at line 26 of file MuonTransientTrackingRecHit.h.

◆ MuonRecHitPointer

Definition at line 21 of file MuonTransientTrackingRecHit.h.

Constructor & Destructor Documentation

◆ ~MuonTransientTrackingRecHit()

MuonTransientTrackingRecHit::~MuonTransientTrackingRecHit ( )
inlineoverride

Definition at line 29 of file MuonTransientTrackingRecHit.h.

29 {}

◆ MuonTransientTrackingRecHit() [1/2]

MuonTransientTrackingRecHit::MuonTransientTrackingRecHit ( const GeomDet geom,
const TrackingRecHit rh 
)
private

Construct from a TrackingRecHit and its GeomDet.

Definition at line 20 of file MuonTransientTrackingRecHit.cc.

Referenced by build(), clone(), and specificBuild().

GenericTransientTrackingRecHit(const GeomDet &geom, const TrackingRecHit &rh)

◆ MuonTransientTrackingRecHit() [2/2]

MuonTransientTrackingRecHit::MuonTransientTrackingRecHit ( const MuonTransientTrackingRecHit other)
private

Copy ctor.

Definition at line 23 of file MuonTransientTrackingRecHit.cc.

24  : GenericTransientTrackingRecHit(*other.det(), *(other.hit())) {}
GenericTransientTrackingRecHit(const GeomDet &geom, const TrackingRecHit &rh)

Member Function Documentation

◆ build()

static RecHitPointer MuonTransientTrackingRecHit::build ( const GeomDet geom,
const TrackingRecHit rh 
)
inlinestatic

FIXME virtual ConstMuonRecHitContainer specificTransientHits() const;.

Definition at line 71 of file MuonTransientTrackingRecHit.h.

References relativeConstraints::geom, and MuonTransientTrackingRecHit().

Referenced by GlobalTrajectoryBuilderBase::fixTEC().

71  {
73  }
MuonTransientTrackingRecHit(const GeomDet *geom, const TrackingRecHit *rh)
Construct from a TrackingRecHit and its GeomDet.
std::shared_ptr< TrackingRecHit const > RecHitPointer

◆ chi2()

double MuonTransientTrackingRecHit::chi2 ( void  ) const
virtual

Chi square of the fit for segments, else 0.

Definition at line 114 of file MuonTransientTrackingRecHit.cc.

References GenericTransientTrackingRecHit::hit().

114  {
115  if (dynamic_cast<const RecSegment*>(hit()))
116  return dynamic_cast<const RecSegment*>(hit())->chi2();
117  else
118  return 0.;
119 }
const TrackingRecHit * hit() const override
virtual double chi2() const
Chi square of the fit for segments, else 0.

◆ clone()

MuonTransientTrackingRecHit* MuonTransientTrackingRecHit::clone ( void  ) const
inlineoverrideprivatevirtual

Implements TValidTrackingRecHit.

Definition at line 91 of file MuonTransientTrackingRecHit.h.

References MuonTransientTrackingRecHit().

Referenced by transientHits().

91 { return new MuonTransientTrackingRecHit(*this); }
MuonTransientTrackingRecHit(const GeomDet *geom, const TrackingRecHit *rh)
Construct from a TrackingRecHit and its GeomDet.

◆ degreesOfFreedom()

int MuonTransientTrackingRecHit::degreesOfFreedom ( ) const
virtual

Degrees of freedom for segments, else 0.

Definition at line 121 of file MuonTransientTrackingRecHit.cc.

References GenericTransientTrackingRecHit::hit().

121  {
122  if (dynamic_cast<const RecSegment*>(hit()))
123  return dynamic_cast<const RecSegment*>(hit())->degreesOfFreedom();
124  else
125  return 0;
126 }
const TrackingRecHit * hit() const override
virtual int degreesOfFreedom() const
Degrees of freedom for segments, else 0.

◆ globalDirection()

GlobalVector MuonTransientTrackingRecHit::globalDirection ( ) const
virtual

Direction in 3D for segments, otherwise (0,0,0)

Definition at line 40 of file MuonTransientTrackingRecHit.cc.

References TrackingRecHit::det(), localDirection(), and TValidTrackingRecHit::surface().

40  {
41  return (det()->surface().toGlobal(localDirection()));
42 }
const Surface * surface() const final
virtual LocalVector localDirection() const
Direction in 3D for segments, otherwise (0,0,0)
const GeomDet * det() const

◆ globalDirectionError()

GlobalError MuonTransientTrackingRecHit::globalDirectionError ( ) const
virtual

Error on the global direction.

Definition at line 44 of file MuonTransientTrackingRecHit.cc.

References TrackingRecHit::det(), localDirectionError(), TValidTrackingRecHit::surface(), and ErrorFrameTransformer::transform().

44  {
46 }
static GlobalError transform(const LocalError &le, const Surface &surf)
const Surface * surface() const final
virtual LocalError localDirectionError() const
Error on the local direction.
const GeomDet * det() const

◆ invalidateHit()

void MuonTransientTrackingRecHit::invalidateHit ( )

Definition at line 194 of file MuonTransientTrackingRecHit.cc.

References TrackingRecHit::bad, GenericTransientTrackingRecHit::dimension(), hfClusterShapes_cfi::hits, isCSC(), isDT(), ALPAKA_ACCELERATOR_NAMESPACE::vertexFinder::it, GenericTransientTrackingRecHit::recHits(), TrackingRecHit::setType(), and GenericTransientTrackingRecHit::trackingRecHit_.

194  {
195  setType(bad);
197 
198  if (isDT()) {
199  if (dimension() > 1) { // MB4s have 2D, but formatted in 4D segments
200  std::vector<TrackingRecHit*> seg2D = recHits(); // 4D --> 2D
201  // load 1D hits (2D --> 1D)
202  for (std::vector<TrackingRecHit*>::iterator it = seg2D.begin(); it != seg2D.end(); ++it) {
203  std::vector<TrackingRecHit*> hits1D = (*it)->recHits();
204  (*it)->setType(bad);
205  for (std::vector<TrackingRecHit*>::iterator it2 = hits1D.begin(); it2 != hits1D.end(); ++it2)
206  (*it2)->setType(bad);
207  }
208  }
209  } else if (isCSC())
210  if (dimension() == 4) {
211  std::vector<TrackingRecHit*> hits = recHits(); // load 2D hits (4D --> 1D)
212  for (std::vector<TrackingRecHit*>::iterator it = hits.begin(); it != hits.end(); ++it)
213  (*it)->setType(bad);
214  }
215 }
std::vector< const TrackingRecHit * > recHits() const override
Access to component RecHits (if any)
bool isDT() const
if this rec hit is a DT rec hit
void setType(Type ttype)
bool isCSC() const
if this rec hit is a CSC rec hit

◆ isCSC()

bool MuonTransientTrackingRecHit::isCSC ( ) const

if this rec hit is a CSC rec hit

Definition at line 130 of file MuonTransientTrackingRecHit.cc.

References MuonSubdetId::CSC, and TrackingRecHit::geographicalId().

Referenced by invalidateHit().

130 { return (geographicalId().subdetId() == MuonSubdetId::CSC); }
DetId geographicalId() const
static constexpr int CSC
Definition: MuonSubdetId.h:12

◆ isDT()

bool MuonTransientTrackingRecHit::isDT ( ) const

if this rec hit is a DT rec hit

Definition at line 128 of file MuonTransientTrackingRecHit.cc.

References MuonSubdetId::DT, and TrackingRecHit::geographicalId().

Referenced by invalidateHit(), and transientHits().

128 { return (geographicalId().subdetId() == MuonSubdetId::DT); }
DetId geographicalId() const
static constexpr int DT
Definition: MuonSubdetId.h:11

◆ isGEM()

bool MuonTransientTrackingRecHit::isGEM ( ) const

if this rec hit is a GEM rec hit

Definition at line 132 of file MuonTransientTrackingRecHit.cc.

References MuonSubdetId::GEM, and TrackingRecHit::geographicalId().

132 { return (geographicalId().subdetId() == MuonSubdetId::GEM); }
static constexpr int GEM
Definition: MuonSubdetId.h:14
DetId geographicalId() const

◆ isME0()

bool MuonTransientTrackingRecHit::isME0 ( ) const

if this rec hit is a ME0 rec hit

Definition at line 134 of file MuonTransientTrackingRecHit.cc.

References TrackingRecHit::geographicalId(), and MuonSubdetId::ME0.

134 { return (geographicalId().subdetId() == MuonSubdetId::ME0); }
static constexpr int ME0
Definition: MuonSubdetId.h:15
DetId geographicalId() const

◆ isRPC()

bool MuonTransientTrackingRecHit::isRPC ( ) const

if this rec hit is a RPC rec hit

Definition at line 136 of file MuonTransientTrackingRecHit.cc.

References TrackingRecHit::geographicalId(), and MuonSubdetId::RPC.

136 { return (geographicalId().subdetId() == MuonSubdetId::RPC); }
DetId geographicalId() const
static constexpr int RPC
Definition: MuonSubdetId.h:13

◆ localDirection()

LocalVector MuonTransientTrackingRecHit::localDirection ( ) const
virtual

Direction in 3D for segments, otherwise (0,0,0)

Definition at line 26 of file MuonTransientTrackingRecHit.cc.

References GenericTransientTrackingRecHit::hit().

Referenced by globalDirection().

26  {
27  if (dynamic_cast<const RecSegment*>(hit()))
28  return dynamic_cast<const RecSegment*>(hit())->localDirection();
29  else
30  return LocalVector(0., 0., 0.);
31 }
Local3DVector LocalVector
Definition: LocalVector.h:12
const TrackingRecHit * hit() const override
virtual LocalVector localDirection() const
Direction in 3D for segments, otherwise (0,0,0)

◆ localDirectionError()

LocalError MuonTransientTrackingRecHit::localDirectionError ( ) const
virtual

Error on the local direction.

Definition at line 33 of file MuonTransientTrackingRecHit.cc.

References GenericTransientTrackingRecHit::hit().

Referenced by globalDirectionError().

33  {
34  if (dynamic_cast<const RecSegment*>(hit()))
35  return dynamic_cast<const RecSegment*>(hit())->localDirectionError();
36  else
37  return LocalError(0., 0., 0.);
38 }
virtual LocalError localDirectionError() const
Error on the local direction.
const TrackingRecHit * hit() const override

◆ parametersError()

AlgebraicSymMatrix MuonTransientTrackingRecHit::parametersError ( ) const
overridevirtual

Implements TrackingRecHit.

Definition at line 48 of file MuonTransientTrackingRecHit.cc.

References GeomDet::alignmentPositionError(), LocalErrorBaseExtended< T, ErrorWeightType >::cphixphix(), LocalErrorBaseExtended< T, ErrorWeightType >::cphixx(), LocalErrorBaseExtended< T, ErrorWeightType >::cphixy(), LocalErrorBaseExtended< T, ErrorWeightType >::cphiyphix(), LocalErrorBaseExtended< T, ErrorWeightType >::cphiyphiy(), LocalErrorBaseExtended< T, ErrorWeightType >::cphiyx(), LocalErrorBaseExtended< T, ErrorWeightType >::cphiyy(), LocalErrorBaseExtended< T, ErrorWeightType >::cxx(), LocalErrorBaseExtended< T, ErrorWeightType >::cyx(), LocalErrorBaseExtended< T, ErrorWeightType >::cyy(), TrackingRecHit::det(), submitPVResolutionJobs::err, AlignmentPositionError::globalError(), GenericTransientTrackingRecHit::localPosition(), GenericTransientTrackingRecHit::parameters(), GenericTransientTrackingRecHit::parametersError(), ErrorFrameTransformer::transform46(), and PV3DBase< T, PVType, FrameType >::x().

48  {
51 
53  if (APE != nullptr) {
54  AlgebraicVector positions(2, 0);
56 
57  if (err.num_row() == 1) {
58  positions[0] = 0.;
59  positions[1] = 0.;
60  directions[0] = 0.;
61  directions[1] = 0.;
63  err[0][0] += lape.cxx();
64  } else if (err.num_row() == 2) {
65  positions[0] = localPosition().x();
66  positions[1] = 0.;
67  directions[0] = 0.;
68  directions[1] = 0.;
70 
71  AlgebraicSymMatrix lapeMatrix(2, 0);
72  lapeMatrix[1][1] = lape.cxx();
73  lapeMatrix[0][0] = lape.cphixphix();
74  lapeMatrix[0][1] = lape.cphixx();
75 
76  if (err.num_row() != lapeMatrix.num_row())
77  throw cms::Exception("MuonTransientTrackingRecHit::parametersError")
78  << "Discrepancy between alignment error matrix and error matrix: APE " << lapeMatrix.num_row()
79  << ", error matrix " << err.num_row() << std::endl;
80 
81  err += lapeMatrix;
82  } else if (err.num_row() == 4) {
83  positions[0] = par[2];
84  positions[1] = par[3];
85  directions[0] = par[0];
86  directions[1] = par[1];
87 
89 
90  AlgebraicSymMatrix lapeMatrix(4, 0);
91  lapeMatrix[2][2] = lape.cxx();
92  lapeMatrix[2][3] = lape.cyx();
93  lapeMatrix[3][3] = lape.cyy();
94  lapeMatrix[0][0] = lape.cphixphix();
95  lapeMatrix[0][1] = lape.cphiyphix();
96  lapeMatrix[1][1] = lape.cphiyphiy();
97 
98  lapeMatrix[0][2] = lape.cphixx();
99  lapeMatrix[0][3] = lape.cphixy();
100  lapeMatrix[1][3] = lape.cphiyy();
101  lapeMatrix[1][2] = lape.cphiyx();
102 
103  if (err.num_row() != lapeMatrix.num_row())
104  throw cms::Exception("MuonTransientTrackingRecHit::parametersError")
105  << "Discrepancy between alignment error matrix and error matrix: APE " << lapeMatrix.num_row()
106  << ", error matrix " << err.num_row() << std::endl;
107 
108  err += lapeMatrix;
109  }
110  }
111  return err;
112 }
AlgebraicSymMatrix parametersError() const override
static LocalErrorExtended transform46(const GlobalErrorExtended &ge, const AlgebraicVector &positions, const AlgebraicVector &directions)
const GeomDet * det() const
T x() const
Definition: PV3DBase.h:59
AlgebraicVector parameters() const override
AlignmentPositionError const * alignmentPositionError() const
Return pointer to alignment errors.
Definition: GeomDet.h:80
CLHEP::HepVector AlgebraicVector
const GlobalErrorExtended & globalError() const
CLHEP::HepSymMatrix AlgebraicSymMatrix

◆ specificBuild()

static MuonRecHitPointer MuonTransientTrackingRecHit::specificBuild ( const GeomDet geom,
const TrackingRecHit rh 
)
inlinestatic

◆ transientHits()

TransientTrackingRecHit::ConstRecHitContainer MuonTransientTrackingRecHit::transientHits ( ) const
overridevirtual

return the sub components of this transient rechit

Reimplemented from TrackingRecHit.

Definition at line 140 of file MuonTransientTrackingRecHit.cc.

References clone(), GeomDet::components(), filterCSVwithJSON::copy, TrackingRecHit::det(), GenericTransientTrackingRecHit::dimension(), GeomDet::geographicalId(), isDT(), GenericTransientTrackingRecHit::recHits(), and createJobs::tmp.

140  {
141  ConstRecHitContainer theSubTransientRecHits;
142 
143  // the sub rec hit of this TransientRecHit
144  std::vector<const TrackingRecHit*> ownRecHits = recHits();
145 
146  if (ownRecHits.empty()) {
147  theSubTransientRecHits.push_back(TransientTrackingRecHit::RecHitPointer(clone()));
148  return theSubTransientRecHits;
149  }
150 
151  // the components of the geom det on which reside this rechit
152  std::vector<const GeomDet*> geomDets = det()->components();
153 
154  if (isDT() && dimension() == 2 && ownRecHits.front()->dimension() == 1 &&
155  (geomDets.size() == 3 || geomDets.size() == 2)) { // it is a phi segment!!
156 
157  std::vector<const GeomDet*> subGeomDets;
158 
159  int sl = 1;
160  for (std::vector<const GeomDet*>::const_iterator geoDet = geomDets.begin(); geoDet != geomDets.end(); ++geoDet) {
161  if (sl != 3) { // FIXME!! this maybe is not always true
162  std::vector<const GeomDet*> tmp = (*geoDet)->components();
163  std::copy(tmp.begin(), tmp.end(), back_inserter(subGeomDets));
164  }
165  ++sl;
166  }
167  geomDets.clear();
168  geomDets = subGeomDets;
169  }
170 
171  // Fill the GeomDet map
172  std::map<DetId, const GeomDet*> gemDetMap;
173 
174  for (std::vector<const GeomDet*>::const_iterator subDet = geomDets.begin(); subDet != geomDets.end(); ++subDet)
175  gemDetMap[(*subDet)->geographicalId()] = *subDet;
176 
177  std::map<DetId, const GeomDet*>::iterator gemDetMap_iter;
178 
179  // Loop in order to check the ids
180  for (std::vector<const TrackingRecHit*>::const_iterator rechit = ownRecHits.begin(); rechit != ownRecHits.end();
181  ++rechit) {
182  gemDetMap_iter = gemDetMap.find((*rechit)->geographicalId());
183 
184  if (gemDetMap_iter != gemDetMap.end())
185  theSubTransientRecHits.push_back(
186  TransientTrackingRecHit::RecHitPointer(new MuonTransientTrackingRecHit(gemDetMap_iter->second, *rechit)));
187  else if ((*rechit)->geographicalId() == det()->geographicalId()) // Phi in DT is on Chamber
188  theSubTransientRecHits.push_back(
190  }
191  return theSubTransientRecHits;
192 }
virtual std::vector< const GeomDet * > components() const
Returns direct components, if any.
Definition: GeomDet.h:73
std::vector< const TrackingRecHit * > recHits() const override
Access to component RecHits (if any)
bool isDT() const
if this rec hit is a DT rec hit
const GeomDet * det() const
DetId geographicalId() const
The label of this GeomDet.
Definition: GeomDet.h:64
std::shared_ptr< TrackingRecHit const > RecHitPointer
TransientTrackingRecHit::ConstRecHitContainer ConstRecHitContainer
tmp
align.sh
Definition: createJobs.py:716
MuonTransientTrackingRecHit * clone() const override

Friends And Related Function Documentation

◆ kkkwwwxxxyyyzzz

friend class kkkwwwxxxyyyzzz
friend

Definition at line 83 of file MuonTransientTrackingRecHit.h.