MuonMatrixManager.h

Go to the documentation of this file.
00001 #ifndef ATLFAST_MUONMATRIXMANAGER_H
00002 #define ATLFAST_MUONMATRIXMANAGER_H
00003 
00004 #include "GaudiKernel/MsgStream.h"
00005 #include "AtlfastAlgs/MuonBinData.h"
00006 #include "AtlfastEvent/TrackTrajectory.h"
00007 
00008 #include "AtlfastAlgs/IMatrixManager.h"
00009 #include "AtlfastAlgs/BinID.h"
00010 #include "AtlfastAlgs/CorrelatedData.h"
00011 #include "AtlfastUtils/HeaderPrinter.h"
00012 
00013 #include <vector>
00014 #include <string>
00015 #include <map>
00016 #include <utility>
00017 
00018 //===========================================================
00019 //
00020 //  Matrix Manager
00021 // 
00022 //  Used by tracksmearer to provide smear matrix data 
00023 //  corresponding to a given track trajectory
00024 //
00025 //===========================================================
00026 
00027 
00028 namespace Atlfast 
00029 {
00030   using std::string;
00031   using std::ifstream;
00032   using std::map;
00033 
00039   class MuonMatrixManager: public IMatrixManager
00040   {
00041     
00042     public:
00043 
00045       MuonMatrixManager( string, int, MsgStream );
00046       
00048       virtual ~MuonMatrixManager();
00049       
00051       vector<double> getVariables( const TrackTrajectory& track, 
00052                                    HepSymMatrix& usedSigma ) const;
00053 
00054     
00055     private:
00056 
00057       MsgStream* m_log;
00058 
00060       void initialise();
00061       void fillVector( ifstream&, vector< vector<double> >&, int );
00062       void makeHeader(); 
00063      
00065       IBinData* getBinData( const TrackTrajectory& track ) const;
00066      
00068       string m_file;
00069       
00071       map<BinID, IBinData*> m_binData;
00072       
00074       CorrelatedData* m_correlatedData;
00075 
00076       int m_randSeed;
00077       vector<double> m_etaBoundaries;
00078       vector<double> m_rTBoundaries;
00079       int m_nRTBins;
00080       int m_nEtaBins;
00081 
00082   };
00083 
00084 }
00085 
00086 #endif
00087 

Generated on Mon Sep 24 14:19:11 2007 for AtlfastAlgs by  doxygen 1.5.1