00001 #ifndef IMDCTUNNINGSVC_H_
00002 #define IMDCTUNNINGSVC_H_
00003
00004 #include "GaudiKernel/IInterface.h"
00005 #include "GaudiKernel/Kernel.h"
00006 #include "BesMdcRes.hh"
00007 #include <string>
00008
00009 static const InterfaceID IID_IMdcTunningSvc("IMdcTunningSvc",1,0);
00010
00011 class IMdcTunningSvc: virtual public IInterface{
00012 public:
00013 static const InterfaceID& interfaceID() { return IID_IMdcTunningSvc; }
00014 virtual BesMdcRes* getMdcRes() =0;
00015 virtual void setMdcRes(std::string path)=0;
00016 virtual double NewSig(int layerId, double driftD)=0;
00017 virtual double DeldriftD(int layerId,double driftD)=0;
00018 virtual double Delcostta(int layerId,double costta)=0;
00019 virtual double GetEff(int layerId,int cellId,double driftD,double cosTheta,int posFlag)=0;
00020 virtual double GetRes(int layerId,int cellId,double driftD,double cosTheta,int posFlag,double entranceAngle,double& mean,double& sigma)=0;
00021 virtual double ResvEntr(int layerId,double enterA,int ilr,double driftD)=0;
00022 virtual double DelEtr_Sig(int lay,double enterA,int ilr,double driftD)=0;
00023 virtual double get_docaEff(int i,int j)=0;
00024 virtual double get_thetaEff(int i,int j)=0;
00025 virtual double get_cellEff(int i,int j)=0;
00026 };
00027
00028 #endif