54 {
56 Gaudi::svcLocator() -> service(
"MessageSvc",
msgSvc);
57 MsgStream log(
msgSvc,
"XtInteMdcCalib");
58 log << MSG::INFO << "XtInteMdcCalib::initialize()" << endreq;
59
60 m_hlist = hlist;
61 m_mdcGeomSvc = mdcGeomSvc;
62 m_mdcFunSvc = mdcFunSvc;
63 m_mdcUtilitySvc = mdcUtilitySvc;
64
66
67 m_fdPf = new TFolder("fdProfile", "fdProfile");
68 m_hlist -> Add(m_fdPf);
69
70 char hname[200];
72 for(int iEntr=0; iEntr<NENTR; iEntr++){
73 for(int lr=0; lr<2; lr++){
74 sprintf(hname, "xt%02d_%02d_%d_gr", lay, iEntr, lr);
75 m_grXt[lay][iEntr][lr] = new TGraph();
76 m_grXt[lay][iEntr][lr]->SetName(hname);
77 m_fdPf->Add(m_grXt[lay][iEntr][lr]);
78
79 int xbinN = (int)((m_tbinLim[lay][1] - m_tbinLim[lay][0])/m_tbinWid[lay][0] + 0.5);
80 sprintf(hname, "xt%02d_%02d_%d_near", lay, iEntr, lr);
81 m_pfNear[lay][iEntr][lr] = new TProfile(hname, hname, xbinN, m_tbinLim[lay][0], m_tbinLim[lay][1]);
82 m_fdPf->Add(m_pfNear[lay][iEntr][lr]);
83
84 int xbinM = (int)((m_tbinLim[lay][2] - m_tbinLim[lay][1])/m_tbinWid[lay][1] + 0.5);
85 sprintf(hname, "xt%02d_%02d_%d_mid", lay, iEntr, lr);
86 m_pfMid[lay][iEntr][lr] = new TProfile(hname, hname, xbinM, m_tbinLim[lay][1], m_tbinLim[lay][2]);
87 m_fdPf->Add(m_pfMid[lay][iEntr][lr]);
88
89 int xbinF = (int)((m_tbinLim[lay][3] - m_tbinLim[lay][2])/m_tbinWid[lay][2] + 0.5);
90 sprintf(hname, "xt%02d_%02d_%d_far", lay, iEntr, lr);
91 m_pfFar[lay][iEntr][lr] = new TProfile(hname, hname, xbinF, m_tbinLim[lay][2], m_tbinLim[lay][3]);
92 m_fdPf->Add(m_pfFar[lay][iEntr][lr]);
93
94
95
96
97
98
99 }
100 }
101 }
102}
virtual void initialize(TObjArray *hlist, IMdcGeomSvc *mdcGeomSvc, IMdcCalibFunSvc *mdcFunSvc, IMdcUtilitySvc *mdcUtilitySvc)=0