TransverseEnergySumVisitor.h

Go to the documentation of this file.
00001 #ifndef ATLFAST_TRANSVERSEENERGYSUMVISITOR_H
00002 #define ATLFAST_TRANSVERSEENERGYSUMVISITOR_H
00003 
00007 
00008 #ifndef ATLFAST_IAOO_H
00009 #include "AtlfastEvent/IAOO.h"
00010 #endif
00011 
00012 #ifndef ATLFAST_IAOOVISITOR_H
00013 #include "AtlfastEvent/IAOOvisitor.h"
00014 #endif
00015 
00016 #ifndef STD_VECTOR_H
00017 #include <vector>
00018 #define STD_VECTOR_H
00019 #endif
00020 
00021 
00022 namespace Atlfast{
00023   class ReconstructedParticle;
00024   class Cell;
00025   class IKinematic;
00026   class TwoCptCell;
00027   class KtCluster;
00028   class Cluster;
00029   class Jet;
00030   class SimpleKinematic;
00031   class Track;
00032 
00033   class IAOO;
00034 
00035   class TransverseEnergySumVisitor: public IAOOvisitor{
00036   public:
00037     TransverseEnergySumVisitor():
00038       m_cellSumET(0.),
00039       m_twoCptCellSumET(0.),
00040       m_clusterSumET(0.),
00041       m_ktClusterSumET(0.),
00042       m_jetSumET(0.),
00043       m_reconstructedParticleSumET(0.),
00044       m_simpleKinematicSumET(0.),
00045       m_trackSumET(0.){}
00046 
00047     ~TransverseEnergySumVisitor(){}
00049     void reset();
00050     void operator()(const IAOO* ia);
00051 
00053     virtual void process(const Cell*);
00054     virtual void process(const Cluster*);
00055     virtual void process(const KtCluster*);
00056     virtual void process(const Jet*);
00057     virtual void process(const ReconstructedParticle*);
00058     virtual void process(const SimpleKinematic*);
00059     virtual void process(const Track*);
00060     virtual void process(const TwoCptCell*);
00061 
00062     //
00063     
00064     double sumET(const Cell&)                   const;
00065     double sumET(const TwoCptCell&)             const;
00066     double sumET(const Cluster&)                const;
00067     double sumET(const KtCluster&)              const;
00068     double sumET(const Jet&)                    const;
00069     double sumET(const SimpleKinematic&)        const;
00070     double sumET(const Track&)                  const;
00071     double sumET(const ReconstructedParticle&)  const;
00072 
00073   private:
00074 
00076     double m_cellSumET;
00077     double m_twoCptCellSumET;
00078     double m_clusterSumET;
00079     double m_ktClusterSumET;
00080     double m_jetSumET;
00081     double m_reconstructedParticleSumET;
00082     double m_simpleKinematicSumET;
00083     double m_trackSumET;
00084   };
00085 }//namespace
00086 #endif 
00087   
00088  
00089 
00090 
00091 
00092 
00093 
00094 
00095 
00096 
00097 
00098 

Generated on Fri Sep 21 13:20:36 2007 for AtlfastUtils by  doxygen 1.5.1