Main Page | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members | File Members

MeasurementProvider.h

Go to the documentation of this file.
00001 // $Id: MeasurementProvider.h,v 1.2 2005/06/29 14:41:19 erodrigu Exp $
00002 #ifndef TRACKTOOLS_MEASUREMENTPROVIDER_H 
00003 #define TRACKTOOLS_MEASUREMENTPROVIDER_H 1
00004 
00005 // Include files
00006 // -------------
00007 // from Gaudi
00008 #include "GaudiAlg/GaudiTool.h"
00009 
00010 // from LHCbKernel
00011 #include "Kernel/LHCbID.h"
00012 
00013 // from TrackInterfaces
00014 #include "TrackInterfaces/IMeasurementProvider.h"            // Interface
00015 
00016 // from TrackEvent
00017 #include "Event/Track.h"
00018 
00019 // from XxxEvent
00020 #include "Event/VeloCluster.h"
00021 #include "Event/ITCluster.h"
00022 #include "Event/OTTime.h"
00023 
00024 // from XxxDet
00025 #include "OTDet/DeOTDetector.h"
00026 #include "STDet/DeSTDetector.h"
00027 #include "VeloDet/DeVelo.h"
00028 
00029 
00030 static const InterfaceID IID_MeasurementProvider ( "MeasurementProvider", 1, 0 );
00031 
00038 class MeasurementProvider : public GaudiTool,
00039                             virtual public IMeasurementProvider {
00040 public:
00042   MeasurementProvider( const std::string& type, 
00043                        const std::string& name,
00044                        const IInterface* parent);
00045 
00046   virtual ~MeasurementProvider( ); 
00047 
00048   StatusCode initialize();
00049 
00050   void load();
00051 
00052   StatusCode load( Track& track );  
00053 
00054   Measurement& measurement( const LHCbID&, 
00055                             double par0 = 999.,
00056                             double par1 = 999.);
00057 
00058 protected:
00059 
00060   // Geometry information
00061   DeOTDetector* m_otDet;
00062   DeSTDetector* m_itDet;
00063   DeVelo*       m_veloDet;
00064 
00065   std::string   m_otDetPath;          
00066   std::string   m_itDetPath;          
00067   std::string   m_veloDetPath;        
00068 
00069   OTTimes*      m_otTimes;
00070   ITClusters*   m_itClusters;
00071   VeloClusters* m_veloClusters;
00072 
00073   std::string   m_measLocation;
00074   
00075 };
00076 #endif // TRACKTOOLS_MEASUREMENTPROVIDER_H

Generated on Mon Jul 4 13:54:28 2005 for New Track Event Model by doxygen 1.4.1