// RecoTrackNtuple.h #ifndef RecoTrackNtuple_H #define RecoTrackNtuple_H // Abstract class for a class which manages an ntuple containing // matched pairs of reco tracks. // #include "ptr/Ptr.h" #include "TrackNtuple.h" #include "trffit/RTrack.h" namespace trf { class HTrack; class RTrackMatch; class RecoTrackNtuple : public TrackNtuple { private: // data public: // constructors and destructor RecoTrackNtuple(); public: // non-virtual non-const methods // Fill ntuple from a list of (unmatched) reconstructed tracks. void fill_list1(const RTrackList& rtrks); void fill_list2(const RTrackList& rtrks); // fill ntuple from a match void fill_match(const RTrackMatch& match); public: // virtual non-const methods // fill ntuple from reco-reco pair // The tracks must be at the same surface. virtual void fill_reco_pair(const HTrack& trh1, const HTrack& trh2) =0; // fill ntuple from an unmatched reco track in the first set virtual void fill_reco1(const HTrack& trm) =0; // fill ntuple from an unmatched reco track in the second set virtual void fill_reco2(const HTrack& trm) =0; }; } // end namespace trf #endif