00001 // $Id: TofGeomSvc.h,v 1.5 2011/02/18 04:19:03 maqm Exp $ // -*-c++-*- 00002 // header file for a class called "TofGeomSvc" 00003 #ifndef TOFGEOMSVC_H 00004 #define TOFGEOMSVC_H 00005 00006 #include <vector> 00007 #include <iostream> 00008 00009 //#include "DBBesGeoBarTOF/DB2BesGeoBarTOF.h" 00010 //#include "DBBesGeoEndTOF/DB2BesGeoEndTOF.h" 00011 00012 #include "TofGeomSvc/BTofGeo.h" 00013 #include "TofGeomSvc/ETofGeo.h" 00014 00015 #include "GaudiKernel/Service.h" 00016 #include "GaudiKernel/IInterface.h" 00017 #include "TofGeomSvc/ITofGeomSvc.h" 00018 using namespace std; 00019 00020 class TofGeomSvc : public Service, virtual public ITofGeomSvc 00021 { 00022 public: 00023 // Constructors and destructors 00024 TofGeomSvc( const std::string& name, ISvcLocator* svcloc ); 00025 ~TofGeomSvc(); 00026 00027 virtual StatusCode queryInterface(const InterfaceID& riid, void** ppvUnknown); 00028 virtual StatusCode initialize ( ); 00029 virtual StatusCode finalize ( ); 00030 00031 // Access by others 00032 BTofGeo* BTof(unsigned id) const; 00033 ETofGeo* ETof(unsigned id) const; 00034 const double getBPhiMax(unsigned id); 00035 const double getBPhiMin(unsigned id); 00036 const double getEPhiMax(unsigned id); 00037 const double getEPhiMin(unsigned id); 00038 void Dump(); 00039 00040 // private method 00041 private: 00042 // void Fill(); 00043 00044 // private data members 00045 private: 00046 vector<BTofGeo*> fBTofGeo; 00047 vector<ETofGeo*> fETofGeo; 00048 }; 00049 00050 #endif /* TOF_REC_GEO_H */ 00051 00052