Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members  

TrackNtupleMaker.h

Go to the documentation of this file.
00001 //  ====================================================================
00002 //  TrackNtupleMaker.h
00003 //  --------------------------------------------------------------------
00004 //
00005 //  This is the header file for the TrackNtupleMaker class
00006 //  which creates the combined Ntuple based on a list of locations
00007 //  in the TES
00008 //
00009 //  It is based upon AtlfastSTLNtupAlg.h by E.Richter-Was
00010 //
00011 //  Author    : H.T.Phillips, P. Clarke, R. Steward, P. Sherwood, E. Richter-Was
00012 //
00013 //  ====================================================================
00014 #ifndef ATLFAST_TRACKNTUPLEMAKER_H
00015 #define ATLFAST_TRACKNTUPLEMAKER_H
00016 
00017 
00018 // places to look in the TES for input
00019 #include <string>
00020 
00021 // Framework include files
00022 #include "GaudiKernel/Algorithm.h"
00023 #include "GaudiKernel/NTuple.h"
00024 #include "AtlfastUtils/TesIO.h"
00025 
00026 namespace Atlfast {
00027   using std::string;
00028 
00029   class TrackNtupleMaker: public Algorithm {
00030   protected:
00031     // Items for the column wise n-tuple
00032     // Tracks
00033     NTuple::Item<long>              m_ntra;
00034     NTuple::Array<long>             m_kpTruth,   m_kfTruth;
00035     NTuple::Array<long>             m_kpm1tra, m_kfm1tra;
00036     NTuple::Array<long>             m_kpm2tra, m_kfm2tra;
00037     NTuple::Array<long>             m_kpm3tra, m_kfm3tra;
00038     NTuple::Array<long>             m_kpm4tra, m_kfm4tra;
00039     NTuple::Array<long>             m_kpm5tra, m_kfm5tra;
00040     NTuple::Array<long>             m_kpm6tra, m_kfm6tra;
00041     NTuple::Array<float>            m_d0Track, m_z0Track, m_phiTrack, 
00042       m_cotTrack, m_ptInvTrack, m_radiusTrack, m_curvTrack;
00043     NTuple::Array<float>            m_d0Truth, m_z0Truth, m_phiTruth,
00044       m_cotTruth, m_ptInvTruth, m_radiusTruth, m_curvTruth;
00045     NTuple::Array<float>            m_corr11tra, m_corr12tra, m_corr13tra, m_corr14tra, m_corr15tra;
00046     NTuple::Array<float>            m_corr22tra, m_corr23tra, m_corr24tra, m_corr25tra;
00047     NTuple::Array<float>            m_corr33tra, m_corr34tra, m_corr35tra;
00048     NTuple::Array<float>            m_corr44tra, m_corr45tra, m_corr55tra;
00049     
00050     // Pointer to an ntuple
00051     NTuple::Tuple* p_nt1;
00052     
00053   public:
00055     TrackNtupleMaker(const std::string& name, ISvcLocator* pSvcLocator); 
00056     StatusCode initialize();
00057     StatusCode execute();
00058     StatusCode finalize();
00059     
00060   private:
00061     // Counters for event processing
00062     long   m_nEvents;                    // Number events processed
00063     TesIO* m_tesIO;
00064     
00065     // member variables pointing to locations in the TES
00066     std::string m_trackLocation;
00067     
00068     //Default values
00069     static const std::string DEFAULT_trackLocation;
00070     
00071   };
00072   
00073 } // end of namespace bracket  
00074 
00075 #endif 

Generated on Tue Mar 18 11:18:25 2003 for AtlfastAlgs by doxygen1.3-rc1