37 {
38
39 MsgStream log(
msgSvc(),
"TreeDedxSimDataCnv" );
40
41 CalibData::DedxSimData* tmpObject = new CalibData::DedxSimData;
42 TreeAddress* add = dynamic_cast<TreeAddress*>( addr );
43 DatabaseRecord* records = add->
pp();
44
45 TBufferFile* buf1 = new TBufferFile( TBuffer::kRead );
46 TBufferFile* buf2 = new TBufferFile( TBuffer::kRead );
47
48 buf1->SetBuffer( ( *records )["TH1F_Col"], 51200000, kFALSE );
49 buf2->SetBuffer( ( *records )["bin"], 512000, kFALSE );
50
51 std::cout << " SftVer is " << ( *records )["SftVer"];
52 std::cout << " CalVerSft is " << ( *records )["CalParVer"];
53 std::cout << " File name is " << ( *records )["FileName"] << std::endl;
54
55
56
57 TTree* tree = new TTree();
58 tree->Streamer( *buf1 );
59
60 TTree*
bin =
new TTree();
61 bin->Streamer( *buf2 );
62
63 TH1F* h1 = new TH1F();
64
65 std::vector<TH1F> hist;
66 std::vector<double> hRange;
67
68 int cnt;
69 tree->SetBranchAddress( "TH1F_Col", &h1 );
70 int entries = tree->GetEntries();
71 for ( cnt = 0; cnt < entries; cnt++ )
72 {
73 tree->GetEntry( cnt );
74 gROOT->cd();
75 TH1F* h2 = new TH1F();
76 h2 = (TH1F*)h1->Clone();
77 hist.push_back( *h2 );
78 }
79 int ver;
80 double betagamma[5000];
81 int totalNum;
82 int bgNum;
83 int thetaNum;
84 if (
bin->FindBranch(
"version" ) )
bin->SetBranchAddress(
"version", &ver );
85 else ver = 0;
86 if (
bin->FindBranch(
"thetaNum" ) )
bin->SetBranchAddress(
"thetaNum", &thetaNum );
87 else thetaNum = 16;
88 bin->SetBranchAddress(
"totalNum", &totalNum );
89 bin->SetBranchAddress(
"betagamma", betagamma );
90 bin->SetBranchAddress(
"betagammaBounds", &bgNum );
92
93 for ( cnt = 0; cnt < bgNum; cnt++ ) { hRange.push_back( betagamma[cnt] ); }
100 refpObject = tmpObject;
101
102 delete tree;
104
105 return StatusCode::SUCCESS;
106}
*******INTEGER m_nBinMax INTEGER m_NdiMax !No of bins in histogram for cell exploration division $ !Last vertex $ !Last active cell $ !Last cell in buffer $ !No of sampling when dividing cell $ !No of function total $ !Flag for random ceel for $ !Flag for type of for WtMax $ !Flag which decides whether vertices are included in the sampling $ entire domain is hyp !Maximum effective eevents per bin
void setThetaNo(const int No)
void setHist(const vector< TH1F > *hist)
void setHistNo(const int No)
void setRangeNo(const int No)
void setRange(const vector< double > *hRange)
void setVersion(const int ver)
virtual DatabaseRecord * pp()