Thanks.
I get:
<pre>
18          inline
19          T const*
20          getProductPtr_(RefCore const& ref) {
21            //if (isNull()) throwInvalidReference();
22            assert (!ref.isTransient());
23            WrapperHolder product = ref.getProductPtr(typeid(T));
24            Wrapper<T> const* wrapper = static_cast<Wrapper<T> const*>(product.wrapper());
25            ref.setProductPtr(wrapper->product());
26            return wrapper->product();
27          }
</pre>
If I navigate up a bit more, at some point I get:
<pre>
(gdb) up
#8  0x00002aaad902e546 in reco::Track::seedRef (this=0x2aab0b30f700)
    at /afs/cern.ch/cms/sw/ReleaseCandidates/vol1/slc5_amd64_gcc481/cms/cmssw/CMSSW_7_1_X_2014-03-27-0200/src/DataFormats/TrackReco/interface/Track.h:111
111         edm::RefToBase<TrajectorySeed> seedRef() const { return extra_->seedRef(); }
(gdb) list
106         /**  return the edm::reference to the trajectory seed in the original
107          *   seeds collection. If the collection has been dropped from the
108          *   Event, the reference may be invalid. Its validity should be tested,
109          *   before the reference is actually used.
110          */
111         edm::RefToBase<TrajectorySeed> seedRef() const { return extra_->seedRef(); }
112
113         ///  Access the lightweight track residuals; these are stored in
114         ///  TrackExtra and provide residual information with 4 bits of
115         ///  precision per hit
</pre>
Further up:
<pre>
(gdb) up
#9  0x00002aaad9051dc4 in RecoTrackAccumulator::accumulateEvent<PileUpEventPrincipal> (this=0x2aaae56e2b80, e=..., iSetup=..., tracks=..., tracksExtras=..., hits=...)
    at /afs/cern.ch/work/g/giamman/fastsim/mixing/CMSSW_7_1_X_2014-03-27-0200/src/FastSimulation/Tracking/plugins/RecoTrackAccumulator.cc:91
91                                                             track.seedDirection(), track.seedRef() ) );
(gdb) list
86            //NewTrackExtraList_->push_back(tracksExtras->at(track_counter));
87            NewTrackExtraList_->push_back( reco::TrackExtra( track.outerPosition(), track.outerMomentum(), track.outerOk(),
88                                                             track.innerPosition(), track.innerMomentum(), track.innerOk(),
89                                                             track.outerStateCovariance(), track.outerDetId(),
90                                                             track.innerStateCovariance(), track.innerDetId(),
91                                                             track.seedDirection(), track.seedRef() ) );
92            NewTrackList_->back().setExtra( reco::TrackExtraRef( rTrackExtras, NewTrackExtraList_->size() - 1) );
93            // rechits:
94            for( trackingRecHit_iterator hit = track.recHitsBegin(); hit != track.recHitsEnd(); ++ hit ) {
95              NewHitList_->push_back( (*hits)[hit_counter] );
</pre>
Does this shed some light?