10#include "GaudiKernel/MsgStream.h"
20 tree.Branch(
"x",&
x,
"x[nclusters]/D");
21 tree.Branch(
"y",&
y,
"y[nclusters]/D");
22 tree.Branch(
"z",&
z,
"z[nclusters]/D");
23 tree.Branch(
"isPhi",&
isPhi,
"isPhi[nclusters]/O");
24 tree.Branch(
"techIndex",&
tIndex,
"techIndex[nclusters]/I");
25 tree.Branch(
"phiIndex",&
pIndex,
"phiIndex[nclusters]/I");
26 tree.Branch(
"isMatch",&
isMatch,
"isMatch[nclusters]/O");
27 tree.Branch(
"barcode",&
barcode,
"barcode[nclusters]/I");
29 tree.Branch(
"chi2",&
chi2,
"chi2[ntracks]/D");
31 tree.Branch(
"chi2T",&
chi2T,
"chi2T[ntracksT]/D");
40 tree.SetBranchAddress(
"x",&
x);
41 tree.SetBranchAddress(
"y",&
y);
42 tree.SetBranchAddress(
"z",&
z);
51 for(
const auto& it: clusters)
fill(*it);
105 if(log.level()<=MSG::DEBUG) log << MSG::DEBUG <<
" ntuple not initialized for reading " <<
endmsg;
111 clusters.push_back(cluster);
118 for(
auto& it: clusters)
delete it;
singleton-like access to IMessageSvc via open function and helper
IMessageSvc * getMessageSvc(bool quiet=false)
static void clean(std::vector< Cluster * > &clusters)
double chi2T[CLUSTERSIZE]
void initForWrite(TTree &tree)
double residual[CLUSTERSIZE]
void fill(const double &fillVal, FillType theFillType)
void initForRead(TTree &tree)
static const int CLUSTERSIZE
bool read(std::vector< Cluster * > &clusters)
double residualT[CLUSTERSIZE]
bool isMatch[CLUSTERSIZE]
Muon::MuonStationIndex::TechnologyIndex m_tIndex
Muon::MuonStationIndex::PhiIndex m_pIndex