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

PionMatrixManager.h

Go to the documentation of this file.
00001 #ifndef ATLFAST_PIONMATRIXMANAGER_H
00002 #define ATLFAST_PIONMATRIXMANAGER_H
00003 
00004 #include "GaudiKernel/MsgStream.h"
00005 #include "AtlfastCode/PionBinData.h"
00006 #include "AtlfastCode/TrackTrajectory.h"
00007 #include "CLHEP/Random/JamesRandom.h"
00008 #include "AtlfastCode/IMatrixManager.h"
00009 #include "AtlfastCode/BinID.h"
00010 #include "AtlfastCode/CorrelatedData.h"
00011 #include "AtlfastCode/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 // RMS 26/4/2001
00027 // Modified to use parametrisation provided by
00028 // Armin Nairz
00029 //===========================================================
00030 
00031 
00032 namespace Atlfast {
00033 
00039   class PionMatrixManager: public IMatrixManager
00040 {
00041 
00042  public:
00044   PionMatrixManager(int, MsgStream);
00046   virtual ~PionMatrixManager();
00048   vector<double> getVariables(const TrackTrajectory& track,
00049                               HepMatrix& usedSigma) const;
00050 
00051 
00052  private:
00053   MsgStream* m_log;
00056   void initialise();
00057   void fillVector(ifstream&, vector< vector<double> >&, int);
00058   void makeHeader(); 
00060   BinID getBinID(const TrackTrajectory& track) const;
00062   string m_file;
00064   map<const BinID,PionBinData*> m_binData;
00066   CorrelatedData* m_correlatedData;
00068   HepRandomEngine* m_randomEngine;
00069 
00070   vector<double> m_etaBoundaries;
00071   vector<double> m_rTBoundaries;
00072   int m_nRTBins;
00073   int m_nEtaBins;
00074 
00075 };
00076 
00077 }
00078 
00079 #endif
00080 
00081 
00082 
00083 
00084 

Generated on Thu Feb 21 14:30:46 2002 for Atlfast by doxygen1.2.13.1 written by Dimitri van Heesch, © 1997-2001