CMS 3D CMS Logo

List of all members | Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes
DTSLRecCluster Class Reference

#include <DTSLRecCluster.h>

Inheritance diagram for DTSLRecCluster:
RecHit1D TrackingRecHit

Public Member Functions

DTSLRecClusterclone () const override
 The clone method needed by the clone policy. More...
 
int dimension () const override
 return 2. The dimension of the matrix More...
 
 DTSLRecCluster ()
 
 DTSLRecCluster (const DTSuperLayerId id, const LocalPoint &, const LocalError &, const std::vector< DTRecHit1DPair > &pair)
 complete constructor More...
 
 DTSLRecCluster (const DTSuperLayerId id, const std::vector< DTRecHit1DPair > &pair)
 c'tor from hits More...
 
LocalPoint localPosition () const override
 Local position. More...
 
LocalError localPositionError () const override
 Error on the local position. More...
 
int nHits () const
 
AlgebraicVector parameters () const override
 the vector of parameters (dx/dz,x) More...
 
AlgebraicSymMatrix parametersError () const override
 
AlgebraicMatrix projectionMatrix () const override
 
std::vector< const TrackingRecHit * > recHits () const override
 return the hits More...
 
std::vector< TrackingRecHit * > recHits () override
 Non-const access to component RecHits (if any) More...
 
std::vector< DTRecHit1DPairspecificRecHits () const
 Access to specific components. More...
 
DTSuperLayerId superLayerId () const
 The id of the superlayer on which reside the segment. More...
 
 ~DTSLRecCluster () override
 
- Public Member Functions inherited from RecHit1D
int dimension () const override
 Return the RecHit dimension. More...
 
AlgebraicVector parameters () const override
 Return just the x. More...
 
AlgebraicSymMatrix parametersError () const override
 Return just "(sigma_x)^2". More...
 
AlgebraicMatrix projectionMatrix () const override
 Return the projection matrix. More...
 
 RecHit1D (DetId id)
 
 RecHit1D (TrackingRecHit::id_type id=0)
 
 ~RecHit1D () override
 Destructor. More...
 
- Public Member Functions inherited from TrackingRecHit
virtual bool canImproveWithTrack () const
 
RecHitPointer cloneForFit (const GeomDet &idet) const
 
virtual TrackingRecHitcloneHit () const
 
virtual RecHitPointer cloneSH () const
 
const GeomDetdet () const
 
virtual const GeomDetUnitdetUnit () const
 
virtual float errorGlobalR () const
 
virtual float errorGlobalRPhi () const
 
virtual float errorGlobalZ () const
 
DetId geographicalId () const
 
virtual void getKfComponents (KfComponentsHolder &holder) const
 
unsigned int getRTTI () const
 
Type getType () const
 
virtual GlobalPoint globalPosition () const
 
virtual GlobalError globalPositionError () const
 
virtual bool hasPositionAndError () const
 to be redefined by daughter class More...
 
virtual TrackingRecHit const * hit () const
 
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
 
virtual const Surfacesurface () const
 
 TrackingRecHit (const GeomDet &idet, TrackingRecHit const &rh)
 
 TrackingRecHit (const GeomDet &idet, Type type=valid)
 
 TrackingRecHit (const GeomDet &idet, unsigned int rt, Type type=valid)
 
 TrackingRecHit (DetId id, Type type=valid)
 
 TrackingRecHit (DetId id, unsigned int rt, Type type=valid)
 
 TrackingRecHit (id_type id=0, Type type=valid)
 
virtual ConstRecHitContainer transientHits () const
 
Type type () const
 
virtual float weight () const
 
virtual ~TrackingRecHit ()
 

Private Member Functions

AlgebraicVector param (const LocalPoint &lp) const
 
AlgebraicSymMatrix parError (const LocalError &le) const
 

Private Attributes

std::vector< DTRecHit1DPairthePairs
 
LocalPoint thePos
 
LocalError thePosError
 
DTSuperLayerId theSlid
 

Static Private Attributes

static const AlgebraicMatrix theProjectionMatrix = initMatrix()
 

Additional Inherited Members

- 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
}
 
- Static Public Attributes inherited from TrackingRecHit
static const int rttiShift = 24
 
static const int typeMask = 0xf
 
- Protected Member Functions inherited from TrackingRecHit
void setId (id_type iid)
 
void setRTTI (unsigned int rt)
 
void setType (Type ttype)
 

Detailed Description

Description:

detailed description

Author
: Stefano Lacaprara - INFN LNL stefa.nosp@m.no.l.nosp@m.acapr.nosp@m.ara@.nosp@m.pd.in.nosp@m.fn.i.nosp@m.t

Modification:

Definition at line 30 of file DTSLRecCluster.h.

Constructor & Destructor Documentation

◆ DTSLRecCluster() [1/3]

DTSLRecCluster::DTSLRecCluster ( )
inline

Definition at line 33 of file DTSLRecCluster.h.

33 {}

Referenced by clone().

◆ DTSLRecCluster() [2/3]

DTSLRecCluster::DTSLRecCluster ( const DTSuperLayerId  id,
const std::vector< DTRecHit1DPair > &  pair 
)

c'tor from hits

Definition at line 34 of file DTSLRecCluster.cc.

35  : theSlid(id), thePairs(pairs) {}

◆ DTSLRecCluster() [3/3]

DTSLRecCluster::DTSLRecCluster ( const DTSuperLayerId  id,
const LocalPoint pos,
const LocalError err,
const std::vector< DTRecHit1DPair > &  pair 
)

complete constructor

Definition at line 37 of file DTSLRecCluster.cc.

41  : theSlid(id), thePos(pos), thePosError(err), thePairs(pairs) {}

◆ ~DTSLRecCluster()

DTSLRecCluster::~DTSLRecCluster ( )
inlineoverride

Definition at line 42 of file DTSLRecCluster.h.

42 {}

Member Function Documentation

◆ clone()

DTSLRecCluster* DTSLRecCluster::clone ( void  ) const
inlineoverridevirtual

The clone method needed by the clone policy.

Implements TrackingRecHit.

Definition at line 46 of file DTSLRecCluster.h.

46 { return new DTSLRecCluster(*this); }

References DTSLRecCluster().

◆ dimension()

int DTSLRecCluster::dimension ( ) const
inlineoverridevirtual

return 2. The dimension of the matrix

Implements TrackingRecHit.

Definition at line 63 of file DTSLRecCluster.h.

63 { return 2; }

◆ localPosition()

LocalPoint DTSLRecCluster::localPosition ( ) const
inlineoverridevirtual

Local position.

Implements RecHit1D.

Definition at line 64 of file DTSLRecCluster.h.

64 { return thePos; }

References thePos.

Referenced by operator<<(), and parameters().

◆ localPositionError()

LocalError DTSLRecCluster::localPositionError ( ) const
inlineoverridevirtual

Error on the local position.

Implements RecHit1D.

Definition at line 65 of file DTSLRecCluster.h.

65 { return thePosError; }

References thePosError.

Referenced by operator<<(), and parametersError().

◆ nHits()

int DTSLRecCluster::nHits ( ) const
inline

Definition at line 75 of file DTSLRecCluster.h.

75 { return thePairs.size(); }

References thePairs.

Referenced by operator<<().

◆ param()

AlgebraicVector DTSLRecCluster::param ( const LocalPoint lp) const
inlineprivate

Definition at line 88 of file DTSLRecCluster.h.

88  {
90  result[1] = lp.x();
91  return result;
92  }

References mps_fire::result, and PV3DBase< T, PVType, FrameType >::x().

Referenced by parameters().

◆ parameters()

AlgebraicVector DTSLRecCluster::parameters ( void  ) const
inlineoverridevirtual

the vector of parameters (dx/dz,x)

Implements TrackingRecHit.

Definition at line 52 of file DTSLRecCluster.h.

52 { return param(localPosition()); }

References localPosition(), and param().

◆ parametersError()

AlgebraicSymMatrix DTSLRecCluster::parametersError ( ) const
inlineoverridevirtual

Implements TrackingRecHit.

Definition at line 55 of file DTSLRecCluster.h.

55 { return parError(localPositionError()); }

References localPositionError(), and parError().

◆ parError()

AlgebraicSymMatrix DTSLRecCluster::parError ( const LocalError le) const
inlineprivate

Definition at line 94 of file DTSLRecCluster.h.

94  {
96  m[0][0] = le.xx();
97  return m;
98  }

References visualization-live-secondInstance_cfg::m, and LocalError::xx().

Referenced by parametersError().

◆ projectionMatrix()

AlgebraicMatrix DTSLRecCluster::projectionMatrix ( ) const
inlineoverridevirtual

return the projection matrix, which must project a parameter vector, whose components are (q/p, dx/dz, dy/dz, x, y), into the vector returned by parameters()

Implements TrackingRecHit.

Definition at line 60 of file DTSLRecCluster.h.

60 { return theProjectionMatrix; }

References theProjectionMatrix.

◆ recHits() [1/2]

vector< const TrackingRecHit * > DTSLRecCluster::recHits ( ) const
overridevirtual

return the hits

Implements TrackingRecHit.

Definition at line 46 of file DTSLRecCluster.cc.

46  {
47  std::vector<const TrackingRecHit*> pointersOfRecHits;
48 
49  for (std::vector<DTRecHit1DPair>::const_iterator rechit = thePairs.begin(); rechit != thePairs.end(); rechit++)
50  pointersOfRecHits.push_back(&(*rechit));
51 
52  return pointersOfRecHits;
53 }

References thePairs.

◆ recHits() [2/2]

vector< TrackingRecHit * > DTSLRecCluster::recHits ( )
overridevirtual

Non-const access to component RecHits (if any)

Implements TrackingRecHit.

Definition at line 55 of file DTSLRecCluster.cc.

55  {
56  std::vector<TrackingRecHit*> pointersOfRecHits;
57 
58  for (std::vector<DTRecHit1DPair>::iterator rechit = thePairs.begin(); rechit != thePairs.end(); rechit++)
59  pointersOfRecHits.push_back(&(*rechit));
60 
61  return pointersOfRecHits;
62 }

References thePairs.

◆ specificRecHits()

std::vector<DTRecHit1DPair> DTSLRecCluster::specificRecHits ( ) const
inline

Access to specific components.

Definition at line 73 of file DTSLRecCluster.h.

73 { return thePairs; }

References thePairs.

◆ superLayerId()

DTSuperLayerId DTSLRecCluster::superLayerId ( ) const
inline

The id of the superlayer on which reside the segment.

Definition at line 49 of file DTSLRecCluster.h.

49 { return theSlid; }

References theSlid.

Member Data Documentation

◆ thePairs

std::vector<DTRecHit1DPair> DTSLRecCluster::thePairs
private

Definition at line 83 of file DTSLRecCluster.h.

Referenced by nHits(), recHits(), and specificRecHits().

◆ thePos

LocalPoint DTSLRecCluster::thePos
private

Definition at line 80 of file DTSLRecCluster.h.

Referenced by localPosition().

◆ thePosError

LocalError DTSLRecCluster::thePosError
private

Definition at line 81 of file DTSLRecCluster.h.

Referenced by localPositionError().

◆ theProjectionMatrix

const AlgebraicMatrix DTSLRecCluster::theProjectionMatrix = initMatrix()
staticprivate

Definition at line 86 of file DTSLRecCluster.h.

Referenced by projectionMatrix().

◆ theSlid

DTSuperLayerId DTSLRecCluster::theSlid
private

Definition at line 78 of file DTSLRecCluster.h.

Referenced by superLayerId().

DTSLRecCluster::localPosition
LocalPoint localPosition() const override
Local position.
Definition: DTSLRecCluster.h:64
DTSLRecCluster::thePairs
std::vector< DTRecHit1DPair > thePairs
Definition: DTSLRecCluster.h:83
PV3DBase::x
T x() const
Definition: PV3DBase.h:59
pos
Definition: PixelAliasList.h:18
DTSLRecCluster::theProjectionMatrix
static const AlgebraicMatrix theProjectionMatrix
Definition: DTSLRecCluster.h:86
AlgebraicVector
CLHEP::HepVector AlgebraicVector
Definition: AlgebraicObjects.h:13
LocalError::xx
float xx() const
Definition: LocalError.h:22
visualization-live-secondInstance_cfg.m
m
Definition: visualization-live-secondInstance_cfg.py:72
runTheMatrix.err
err
Definition: runTheMatrix.py:288
DTSLRecCluster::theSlid
DTSuperLayerId theSlid
Definition: DTSLRecCluster.h:78
DTSLRecCluster::localPositionError
LocalError localPositionError() const override
Error on the local position.
Definition: DTSLRecCluster.h:65
AlgebraicSymMatrix
CLHEP::HepSymMatrix AlgebraicSymMatrix
Definition: AlgebraicObjects.h:15
DTSLRecCluster::thePos
LocalPoint thePos
Definition: DTSLRecCluster.h:80
DTSLRecCluster::thePosError
LocalError thePosError
Definition: DTSLRecCluster.h:81
DTSLRecCluster::DTSLRecCluster
DTSLRecCluster()
Definition: DTSLRecCluster.h:33
DTSLRecCluster::parError
AlgebraicSymMatrix parError(const LocalError &le) const
Definition: DTSLRecCluster.h:94
mps_fire.result
result
Definition: mps_fire.py:303
DTSLRecCluster::param
AlgebraicVector param(const LocalPoint &lp) const
Definition: DTSLRecCluster.h:88