Atlfast::IKinematic Class Reference

#include <IKinematic.h>

Inheritance diagram for Atlfast::IKinematic:

Inheritance graph
[legend]
Collaboration diagram for Atlfast::IKinematic:

Collaboration graph
[legend]
List of all members.

Public Member Functions

virtual HepLorentzVector momentum () const=0
virtual double eta () const=0
virtual double phi () const=0
virtual double pT () const=0
virtual double eT () const=0
virtual double mT () const=0
virtual ~IKinematic ()
virtual IKinematicclone () const=0
virtual void print (const std::string &, std::string s="") const =0
virtual double e () const
virtual double m () const
virtual void accept (IAOOvisitor *) const =0
 to be implemented by the concrete classes
virtual void associate (const IAOO *otherEntity)=0
 store any object with IAOO above it the inheritance heirarchy
virtual std::vector< const
IAOO * >::const_iterator 
begin () const=0
 iterators for the store.
virtual std::vector< const
IAOO * >::const_iterator 
end () const=0
virtual bool unAssociated () const=0
 A quick way to find out whether there are any associations at a ll.
virtual void reset ()=0
 zero the container
virtual void dump (const std::string &s) const =0
 dump out debug info

Detailed Description

Kinematic interface for 4-vector like entities.

Within an analysis one is generally dealing with several different Types (Particles, Clusters, Tracks, .....). These are rightly different Types as their constructions, associations ...etc are in general very different.
However in many cases the user will only want to access commom kinematic quantitites such as pT, eta, phi.....etc (for example when making a cut or plotting a histogram).
It therefore makes sense to enforce a standarsdised set of methods for access to such quantities. This would mean, for example, that all users could be sure that if they want to access eta from some object then it is always available through the following:
double val = objectname.eta( ) ;

Definition at line 54 of file IKinematic.h.


Constructor & Destructor Documentation

virtual Atlfast::IKinematic::~IKinematic (  )  [inline, virtual]

Definition at line 68 of file IKinematic.h.

00068 {};


Member Function Documentation

virtual HepLorentzVector Atlfast::IKinematic::momentum (  )  const [pure virtual]

Implemented in Atlfast::Cell, Atlfast::Cluster, Atlfast::Jet, Atlfast::ReconstructedParticle, Atlfast::SimpleKinematic, and Atlfast::Track.

virtual double Atlfast::IKinematic::eta (  )  const [pure virtual]

Implemented in Atlfast::Cell, Atlfast::Cluster, Atlfast::Jet, Atlfast::ReconstructedParticle, Atlfast::SimpleKinematic, and Atlfast::Track.

virtual double Atlfast::IKinematic::phi (  )  const [pure virtual]

Implemented in Atlfast::Cell, Atlfast::Cluster, Atlfast::Jet, Atlfast::ReconstructedParticle, Atlfast::SimpleKinematic, and Atlfast::Track.

virtual double Atlfast::IKinematic::pT (  )  const [pure virtual]

Implemented in Atlfast::Cell, Atlfast::Cluster, Atlfast::Jet, Atlfast::ReconstructedParticle, Atlfast::SimpleKinematic, and Atlfast::Track.

virtual double Atlfast::IKinematic::eT (  )  const [pure virtual]

Implemented in Atlfast::Cell, Atlfast::Cluster, Atlfast::Jet, Atlfast::ReconstructedParticle, Atlfast::SimpleKinematic, and Atlfast::Track.

virtual double Atlfast::IKinematic::mT (  )  const [pure virtual]

Implemented in Atlfast::Cell, Atlfast::Cluster, Atlfast::Jet, Atlfast::ReconstructedParticle, Atlfast::SimpleKinematic, and Atlfast::Track.

virtual IKinematic* Atlfast::IKinematic::clone (  )  const [pure virtual]

Implemented in Atlfast::Cell, Atlfast::Cluster, Atlfast::Jet, Atlfast::KtCluster, Atlfast::ReconstructedParticle, Atlfast::SimpleKinematic, Atlfast::Track, and Atlfast::TwoCptCell.

virtual void Atlfast::IKinematic::print ( const std::string &  ,
std::string  s = "" 
) const [pure virtual]

Implemented in Atlfast::Cell, Atlfast::Cluster, Atlfast::IKinematicBase, Atlfast::Jet, Atlfast::KtCluster, Atlfast::ReconstructedParticle, Atlfast::Track, and Atlfast::TwoCptCell.

virtual double Atlfast::IKinematic::e (  )  const [inline, virtual]

Reimplemented in Atlfast::Jet.

Definition at line 75 of file IKinematic.h.

00075 {return this->momentum().e();}

virtual double Atlfast::IKinematic::m (  )  const [inline, virtual]

Definition at line 76 of file IKinematic.h.

00076 {return this->momentum().m();}

virtual void Atlfast::IAOO::accept ( IAOOvisitor  )  const [pure virtual, inherited]

to be implemented by the concrete classes

Implemented in Atlfast::Cell, Atlfast::Cluster, Atlfast::Jet, Atlfast::KtCluster, Atlfast::ReconstructedParticle, Atlfast::SimpleKinematic, Atlfast::Track, and Atlfast::TwoCptCell.

virtual void Atlfast::IAOO::associate ( const IAOO otherEntity  )  [pure virtual, inherited]

store any object with IAOO above it the inheritance heirarchy

Implemented in Atlfast::AOObase.

virtual std::vector<const IAOO*>::const_iterator Atlfast::IAOO::begin (  )  const [pure virtual, inherited]

iterators for the store.

Implemented in Atlfast::AOObase.

virtual std::vector<const IAOO*>::const_iterator Atlfast::IAOO::end (  )  const [pure virtual, inherited]

Implemented in Atlfast::AOObase.

virtual bool Atlfast::IAOO::unAssociated (  )  const [pure virtual, inherited]

A quick way to find out whether there are any associations at a ll.

Implemented in Atlfast::AOObase.

virtual void Atlfast::IAOO::reset (  )  [pure virtual, inherited]

zero the container

Implemented in Atlfast::AOObase.

virtual void Atlfast::IAOO::dump ( const std::string &  s  )  const [pure virtual, inherited]

dump out debug info

Implemented in Atlfast::AOObase.


The documentation for this class was generated from the following file:
Generated on Fri Sep 21 13:00:21 2007 for AtlfastEvent by  doxygen 1.5.1