1 #ifndef RECOTRACKER_TRANSIENTRACKINGRECHIT_TSiStripRecHit2DLocalPos_H
2 #define RECOTRACKER_TRANSIENTRACKINGRECHIT_TSiStripRecHit2DLocalPos_H
40 virtual std::vector<const TrackingRecHit*>
recHits()
const {
43 virtual std::vector<TrackingRecHit*>
recHits() {
61 float weight=1.,
float annealing=1.,
62 bool computeCoarseLocalPosition=
false) {
70 float weight=1.,
float annealing=1.) {
78 float weight=1.,
float annealing=1.) {
91 float weight,
float annealing,
92 bool computeCoarseLocalPosition) :
98 if (computeCoarseLocalPosition && !cpe){
99 edm::LogError(
"TSiStripRecHit2DLocalPos")<<
" trying to compute coarse local position but CPE is not provided. Not computing local position from disk for the transient tracking rechit.";
104 LogDebug(
"TSiStripRecHit2DLocalPos")<<
"calculating coarse position/error.";
114 edm::LogError(
"TSiStripRecHit2DLocalPos")<<
" geomdet does not cast into geomdet unit. cannot create strip local parameters.";
126 float weight,
float annealing) :
139 float weight,
float annealing) :
ReferenceCountingPointer< TransientTrackingRecHit > RecHitPointer
virtual LocalPoint localPosition() const
const SiStripRecHit2D * specificHit() const
SiStripRecHit2D::ClusterRef SiStripClusterRef
virtual LocalError localPositionError() const
const StripClusterParameterEstimator * theCPE
virtual const GeomDetUnit * detUnit() const
virtual ConstRecHitContainer transientHits() const
Composite interface: returns the component hits, if any.
static void getKfComponents(KfComponentsHolder &holder, const TrackingRecHit &hit2dLocalPos, const GeomDet &det)
TSiStripRecHit2DLocalPos(const LocalPoint &pos, const LocalError &err, const GeomDet *det, const SiStripClusterRef clust, const StripClusterParameterEstimator *cpe, float weight, float annealing)
Creates the TrackingRecHit internally, avoids redundent cloning.
virtual AlgebraicMatrix projectionMatrix() const
virtual TSiStripRecHit2DLocalPos * clone() const
ClusterRegionalRef const & cluster_regional() const
static RecHitPointer build(const GeomDet *geom, const SiStripRecHit2D *rh, const StripClusterParameterEstimator *cpe, float weight=1., float annealing=1., bool computeCoarseLocalPosition=false)
virtual std::vector< const TrackingRecHit * > recHits() const
Access to component RecHits (if any)
std::pair< LocalPoint, LocalError > LocalValues
virtual bool canImproveWithTrack() const
virtual int dimension() const
virtual LocalPoint localPosition() const
TSiStripRecHit2DLocalPos(const LocalPoint &pos, const LocalError &err, const GeomDet *det, const SiStripRegionalClusterRef clust, const StripClusterParameterEstimator *cpe, float weight, float annealing)
virtual LocalValues localParameters(const T &, const GeomDetUnit &) const =0
bool isNonnull() const
Checks for non-null.
virtual std::vector< const TrackingRecHit * > recHits() const
Access to component RecHits (if any)
CLHEP::HepMatrix AlgebraicMatrix
SiStripRecHit2D theHitData
virtual AlgebraicVector parameters() const
const StripClusterParameterEstimator * cpe() const
virtual LocalError localPositionError() const
bool hasPositionAndError() const
virtual std::vector< const TrackingRecHit * > recHits() const =0
Access to component RecHits (if any)
virtual AlgebraicMatrix projectionMatrix() const
DetId geographicalId() const
The label of this GeomDet.
static RecHitPointer build(const LocalPoint &pos, const LocalError &err, const GeomDet *det, const SiStripRegionalClusterRef clust, const StripClusterParameterEstimator *cpe, float weight=1., float annealing=1.)
TSiStripRecHit2DLocalPos(const GeomDet *geom, const SiStripRecHit2D *rh, const StripClusterParameterEstimator *cpe, float weight, float annealing, bool computeCoarseLocalPosition)
virtual void getKfComponents(KfComponentsHolder &holder) const
CLHEP::HepVector AlgebraicVector
edm::LazyGetter< SiStripCluster >::value_ref SiStripRegionalClusterRef
virtual AlgebraicVector parameters() const
ClusterRef const & cluster() const
virtual std::vector< TrackingRecHit * > recHits()
Non-const access to component RecHits (if any)
static RecHitPointer build(const LocalPoint &pos, const LocalError &err, const GeomDet *det, const SiStripClusterRef clust, const StripClusterParameterEstimator *cpe, float weight=1., float annealing=1.)
virtual const TrackingRecHit * hit() const
virtual ~TSiStripRecHit2DLocalPos()
const GeomDet * det() const
The GomeDet* can be zero for InvalidTransientRecHits and for TConstraintRecHit2Ds.
CLHEP::HepSymMatrix AlgebraicSymMatrix
virtual AlgebraicSymMatrix parametersError() const
TransientTrackingRecHit::ConstRecHitContainer ConstRecHitContainer
DetId geographicalId() const
virtual int dimension() const
static AlgebraicSymMatrix parError(const LocalError &le, const GeomDet &det)