2#include "CalibData/Dedx/DedxSimData.h"
3#include "CalibDataSvc/IInstrumentName.h"
4#include "CalibMySQLCnvSvc/TreeAddress.h"
5#include "GaudiKernel/MsgStream.h"
7#include "TBufferFile.h"
14#include "GaudiKernel/DataObject.h"
15#include "GaudiKernel/GenericAddress.h"
16#include "GaudiKernel/IAddressCreator.h"
17#include "GaudiKernel/IConversionSvc.h"
18#include "GaudiKernel/IDataProviderSvc.h"
19#include "GaudiKernel/IOpaqueAddress.h"
21#include "CalibDataSvc/ICalibMetaCnvSvc.h"
22#include "CalibDataSvc/ICalibTreeSvc.h"
25#include "CalibData/CalibModel.h"
39 MsgStream log(
msgSvc(),
"TreeDedxSimDataCnv" );
45 TBufferFile* buf1 =
new TBufferFile( TBuffer::kRead );
46 TBufferFile* buf2 =
new TBufferFile( TBuffer::kRead );
48 buf1->SetBuffer( ( *records )[
"TH1F_Col"], 51200000, kFALSE );
49 buf2->SetBuffer( ( *records )[
"bin"], 512000, kFALSE );
51 std::cout <<
" SftVer is " << ( *records )[
"SftVer"];
52 std::cout <<
" CalVerSft is " << ( *records )[
"CalParVer"];
53 std::cout <<
" File name is " << ( *records )[
"FileName"] << std::endl;
57 TTree* tree =
new TTree();
58 tree->Streamer( *buf1 );
60 TTree*
bin =
new TTree();
61 bin->Streamer( *buf2 );
63 TH1F* h1 =
new TH1F();
65 std::vector<TH1F> hist;
66 std::vector<double> hRange;
69 tree->SetBranchAddress(
"TH1F_Col", &h1 );
70 int entries = tree->GetEntries();
71 for ( cnt = 0; cnt < entries; cnt++ )
73 tree->GetEntry( cnt );
75 TH1F* h2 =
new TH1F();
76 h2 = (TH1F*)h1->Clone();
77 hist.push_back( *h2 );
80 double betagamma[5000];
84 if (
bin->FindBranch(
"version" ) )
bin->SetBranchAddress(
"version", &ver );
86 if (
bin->FindBranch(
"thetaNum" ) )
bin->SetBranchAddress(
"thetaNum", &thetaNum );
88 bin->SetBranchAddress(
"totalNum", &totalNum );
89 bin->SetBranchAddress(
"betagamma", betagamma );
90 bin->SetBranchAddress(
"betagammaBounds", &bgNum );
93 for ( cnt = 0; cnt < bgNum; cnt++ ) { hRange.push_back( betagamma[cnt] ); }
100 refpObject = tmpObject;
105 return StatusCode::SUCCESS;
*******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()
TreeCalBaseCnv(ISvcLocator *svc, const CLID &clid)
TreeDedxSimDataCnv(ISvcLocator *svc)
virtual StatusCode i_createObj(IOpaqueAddress *address, DataObject *&refpObject)
const CLID & objType() const
static const CLID & classID()