Hi Pasha,
using inheritance raises more problems than it solves, e.g. the dot
product. Maybe you could make TVector3 a member of TLorentzVector:
class TLorentzVector {
Double_t E; // time / energy component
TVector3 P; // space / momentum component
....
};
This represents more the physical structure of TLorentzVector, which
consists of a TVector3 and another component, and has the advantage not to
create a temporary if you write
TVector3 & TLorentzVector::Vect() { return P; };
I don't see a problem writing
jet.Vect().DrEtaPhi(track)
then.
Martin
This archive was generated by hypermail 2b29 : Tue Jan 04 2000 - 00:43:42 MET