ICell.h

Go to the documentation of this file.
00001 
00002 
00003 #ifndef ATLFAST_ICELL_H
00004 #define ATLFAST_ICELL_H
00005 
00006 //#ifndef ATLFAST_IKINEMATIC_H
00007 //#include "AtlfastEvent/IKinematic.h"
00008 //#endif
00009 
00010 #ifndef ATLFAST_IAODNAVIGATION_H
00011 #include "AtlfastEvent/IAODNavigation.h"
00012 #endif
00013 
00014 #ifndef HEPLORENTZVECTOR_H
00015 #include "CLHEP/Vector/LorentzVector.h" 
00016 #define HEPLORENTZVECTOR_H
00017 #endif
00018 
00019 namespace HepMC{
00020   class GenParticle;
00021 }
00022 
00023 namespace Atlfast {
00024   using HepMC::GenParticle;
00025   class EPileupDeposit;
00026 
00027   class ICell:    virtual public IAODNavigation{
00028     public:
00030     virtual ~ICell() { } 
00031     //Deposits due to a ...
00032     virtual void newHit(const GenParticle* part)              = 0; 
00033     virtual void newHit(const HepLorentzVector part)          = 0; 
00034     virtual void newHit(const EPileupDeposit*)                = 0; 
00035     virtual void newHit(double pT)                            = 0; 
00036     virtual void setPt(HepLorentzVector&)                     = 0; 
00037     virtual void resetCell()                                  = 0; 
00038     virtual int numberOfHits() const                          = 0;
00039     virtual std::vector<const GenParticle*> particles() const = 0;
00040     virtual void addParticle(const GenParticle*)              = 0;
00041   };
00042 }//end of naCell::mespace bracket
00043 #endif
00044 
00045 
00046 
00047 
00048 
00049 
00050 
00051 
00052 

Generated on Fri Sep 21 13:00:08 2007 for AtlfastEvent by  doxygen 1.5.1