17 throw cms::Exception(
"InvalidInput") <<
"Unknown trackQuality value '"
19 <<
"'. See possible values in 'reco::TrackBase::qualityByName'";
22 produces< std::vector<reco::TrackExtrapolation> > ();
47 FiducialVolume const & ecalvolume = ecalDetIdAssociator_h->volume();
53 std::auto_ptr< std::vector<reco::TrackExtrapolation> > extrapolations(
new std::vector<reco::TrackExtrapolation>() );
57 for ( reco::TrackCollection::const_iterator trkBegin = tracks_h->begin(),
58 trkEnd = tracks_h->end(), itrk = trkBegin;
59 itrk != trkEnd; ++itrk ) {
63 if (itrk->quality (trackQuality)) {
67 std::vector<reco::TrackBase::Point> vresultPos(1);
68 std::vector<reco::TrackBase::Vector> vresultMom(1);
72 for ( std::vector<reco::TrackRef>::const_iterator trkBegin = goodTracks.begin(),
73 trkEnd = goodTracks.end(), itrk = trkBegin;
74 itrk != trkEnd; ++itrk ) {
76 vresultPos[0], vresultMom[0]) ) {
82 iEvent.
put( extrapolations );
106 propagatedInfo = fPropagator.
propagate (trackState,
113 double minz=volume.
minZ();
115 propagatedInfo = fPropagator.
propagate (trackState,
121 propagatedInfo = fPropagator.
propagate (trackState,
128 if (propagatedInfo.
isValid()) {
T getParameter(std::string const &) const
virtual FreeTrajectoryState propagate(const FreeTrajectoryState &ftsStart, const GlobalPoint &pDest) const final
double outerPy() const
y coordinate of momentum vector at the outermost hit position
const TrackExtraRef & extra() const
reference to "extra" object
bool getByToken(EDGetToken token, Handle< PROD > &result) const
TrackQuality
track quality
#define DEFINE_FWK_MODULE(type)
Global3DPoint GlobalPoint
GlobalPoint globalPosition() const
double px() const
x coordinate of momentum vector
double minZ(bool withTolerance=true) const
double outerZ() const
z coordinate of the outermost hit position
static CylinderPointer build(const PositionType &pos, const RotationType &rot, Scalar radius, Bounds *bounds=0)
OrphanHandle< PROD > put(std::auto_ptr< PROD > product)
Put a new product.
double outerX() const
x coordinate of the outermost hit position
math::XYZPoint Point
point in the space
double outerPz() const
z coordinate of momentum vector at the outermost hit position
double pz() const
z coordinate of momentum vector
double minR(bool withTolerance=true) const
double vz() const
z coordinate of the reference point on track
static TrackQuality qualityByName(const std::string &name)
Point3DBase< float, GlobalTag > PositionType
double vy() const
y coordinate of the reference point on track
GlobalVector globalMomentum() const
TkRotation< float > RotationType
double outerY() const
y coordinate of the outermost hit position
int charge() const
track electric charge
math::XYZVector Vector
spatial vector
double outerPx() const
x coordinate of momentum vector at the outermost hit position
double py() const
y coordinate of momentum vector
double vx() const
x coordinate of the reference point on track
Global3DVector GlobalVector