1#include "GaudiKernel/MsgStream.h"
13#include "GaudiKernel/CnvFactory.h"
14#include "GaudiKernel/IOpaqueAddress.h"
15#include "GaudiKernel/DataObject.h"
16#include "GaudiKernel/IAddressCreator.h"
17#include "GaudiKernel/IDataProviderSvc.h"
18#include "GaudiKernel/IConversionSvc.h"
19#include "GaudiKernel/GenericAddress.h"
47 DataObject*& refpObject) {
49 MsgStream log(
msgSvc(),
"TreeMdcCalibDataCnv");
50 log<<MSG::DEBUG<<
"SetProperty"<<endreq;
55 TBufferFile *buf1 =
new TBufferFile(TBuffer::kRead);
56 TBufferFile *buf2 =
new TBufferFile(TBuffer::kRead);
57 TBufferFile *buf3 =
new TBufferFile(TBuffer::kRead);
58 TBufferFile *buf4 =
new TBufferFile(TBuffer::kRead);
59 TBufferFile *buf5 =
new TBufferFile(TBuffer::kRead);
60 TBufferFile *buf6 =
new TBufferFile(TBuffer::kRead);
62 buf1->SetBuffer((*records)[
"XtTree"],512000,kFALSE);
63 buf2->SetBuffer((*records)[
"QtTree"],512000,kFALSE);
64 buf3->SetBuffer((*records)[
"T0Tree"],512000,kFALSE);
65 buf4->SetBuffer((*records)[
"SdTree"],512000,kFALSE);
66 buf5->SetBuffer((*records)[
"NewXtTrees"],51200000,kFALSE);
67 buf6->SetBuffer((*records)[
"R2tTrees"],25600000,kFALSE);
69 std::cout<<
" SftVer is "<<(*records)[
"SftVer"];
70 std::cout<<
"TreeMdcCalibDataCnv: CalVerSft is "<<(*records)[
"CalParVer"]<<std::endl;
71 std::cout<<
"TreeMdcCalibDataCnv: Calib file name is "<<(*records)[
"FileName"]<<std::endl;
73 TTree* xttree =
new TTree();
74 xttree->Streamer(*buf1);
76 TTree* qttree =
new TTree();
77 qttree->Streamer(*buf2);
79 TTree* t0tree=
new TTree();
80 t0tree->Streamer(*buf3);
82 TTree* sdtree =
new TTree();
83 sdtree->Streamer(*buf4);
86 DatabaseRecord::iterator it = (*records).find(
"NewXtTrees");
87 if(it!=(*records).end()){
88 if((*it).second!=NULL) {
89 newxttrees.Streamer(*buf5);
94 it = (*records).find(
"R2tTrees");
95 if(it!=(*records).end()){
96 if((*it).second!=NULL) {
97 r2ttrees.Streamer(*buf6);
114 tmpObject -> setXtpar(xtkey,xtpar);
118 if((43*18*2)==newxttrees.GetEntries()){
120 for(
int i=0;i<43*18*2;i++){
121 TTree* tempTree = (TTree*) newxttrees.At(i);
126 if(43==r2ttrees.GetEntries()){
128 for(
int i=0;i<43;i++){
129 TTree* tempTree = (TTree*) r2ttrees.At(i);
142 tmpObject -> setT0(t0);
143 tmpObject -> setDelT0(delt0);
153 tmpObject -> setQtpar0(qtpar0);
154 tmpObject -> setQtpar1(qtpar1);
166 tmpObject -> setSdpar(sdkey,sdpar);
169 refpObject=tmpObject;
182 return StatusCode::SUCCESS;
const CLID CLID_Calib_MdcCal
data SetBranchAddress("time",&time)
void setR2tpar(TObjArray *r2tTrees)
void setNewXtpar(TObjArray *newXtTrees)
virtual DatabaseRecord * pp()
static const CLID & classID()
TreeMdcCalibDataCnv(ISvcLocator *svc)
const CLID & objType() const
virtual StatusCode i_createObj(IOpaqueAddress *address, DataObject *&refpObject)