17 constexpr float defaultInvalidTrackReso = 0.350f;
41 }
else if ( tryPacked.
get() !=
nullptr && tryPacked->
timeError() > 0.f ) {
48 return this->build(&t);
68 vector<TransientTrack>
71 vector<TransientTrack> ttVect;
72 ttVect.reserve((*trkColl).size());
73 for (
unsigned int i = 0;
i < (*trkColl).size() ;
i++) {
79 vector<TransientTrack>
82 vector<TransientTrack> ttVect;
83 ttVect.reserve((*trkColl).size());
84 for (
unsigned int i = 0;
i < (*trkColl).size() ;
i++) {
91 vector<TransientTrack>
94 vector<TransientTrack> ttVect;
95 ttVect.reserve((*trkColl).size());
96 for (
unsigned int i = 0;
i < (*trkColl).size() ;
i++) {
97 const Track * trk = &(*trkColl)[
i];
109 vector<TransientTrack>
114 vector<TransientTrack> ttVect;
115 ttVect.reserve((*trkColl).size());
116 for (
unsigned int i = 0;
i < (*trkColl).size() ;
i++) {
118 double time = trackTimes[ref];
119 double timeReso = trackTimeResos[ref];
120 timeReso = ( timeReso > 1
e-6 ? timeReso : defaultInvalidTrackReso );
123 timeReso = defaultInvalidTrackReso;
125 ttVect.push_back(
TransientTrack(ref, time, timeReso, theField, theTrackingGeometry));
130 vector<TransientTrack>
135 vector<TransientTrack> ttVect;
136 ttVect.reserve((*trkColl).size());
137 for (
unsigned int i = 0;
i < (*trkColl).size() ;
i++) {
139 double time = trackTimes[ref];
140 double timeReso = trackTimeResos[ref];
141 timeReso = ( timeReso > 1
e-6 ? timeReso : defaultInvalidTrackReso );
144 timeReso = defaultInvalidTrackReso;
152 vector<TransientTrack>
157 vector<TransientTrack> ttVect;
158 ttVect.reserve((*trkColl).size());
159 for (
unsigned int i = 0;
i < (*trkColl).size() ;
i++) {
160 const Track * trk = &(*trkColl)[
i];
164 double time = trackTimes[ref];
165 double timeReso = trackTimeResos[ref];
166 timeReso = ( timeReso > 1
e-6 ? timeReso : defaultInvalidTrackReso );
169 timeReso = defaultInvalidTrackReso;
175 double time = trackTimes[ref];
176 double timeReso = trackTimeResos[ref];
177 timeReso = ( timeReso > 1
e-6 ? timeReso : defaultInvalidTrackReso );
180 timeReso = defaultInvalidTrackReso;
188 vector<TransientTrack>
192 vector<TransientTrack> ttVect = build(trkColl);
193 for (
unsigned int i = 0;
i < ttVect.size() ;
i++) {
194 ttVect[
i].setBeamSpot(beamSpot);
199 vector<TransientTrack>
203 vector<TransientTrack> ttVect = build(trkColl);
204 for (
unsigned int i = 0;
i < ttVect.size() ;
i++) {
205 ttVect[
i].setBeamSpot(beamSpot);
210 vector<TransientTrack>
214 vector<TransientTrack> ttVect = build(trkColl);
215 for (
unsigned int i = 0;
i < ttVect.size() ;
i++) {
216 ttVect[
i].setBeamSpot(beamSpot);
221 vector<TransientTrack>
227 vector<TransientTrack> ttVect = build(trkColl, trackTimes, trackTimeResos );
228 for (
unsigned int i = 0;
i < ttVect.size() ;
i++) {
229 ttVect[
i].setBeamSpot(beamSpot);
234 vector<TransientTrack>
240 vector<TransientTrack> ttVect = build(trkColl, trackTimes, trackTimeResos);
241 for (
unsigned int i = 0;
i < ttVect.size() ;
i++) {
242 ttVect[
i].setBeamSpot(beamSpot);
247 vector<TransientTrack>
253 vector<TransientTrack> ttVect = build(trkColl, trackTimes, trackTimeResos);
254 for (
unsigned int i = 0;
i < ttVect.size() ;
i++) {
255 ttVect[
i].setBeamSpot(beamSpot);
edm::Ref< GsfTrackCollection > GsfTrackRef
persistent reference to a GsfTrack
constexpr bool isNotFinite(T x)
T const * get() const
Returns C++ pointer to the item.
reco::TransientTrack build(const reco::Track *p) const
virtual float time() const
time (wrt nominal zero of the collision)
bool isTimeValid() const
do we have a valid time information
virtual float timeError() const
time measurement uncertainty (-1 if not available)
edm::Ref< TrackCollection > TrackRef
persistent reference to a Track