#include "GaudiKernel/xtoa.h"
#include "GaudiKernel/INTupleSvc.h"
#include "GaudiKernel/MsgStream.h"
#include "GaudiKernel/NTuple.h"
#include <cstdio>
#include <utility>
#include <list>
#include <vector>
#include "RCWNTupleCnv.h"
#include "TTree.h"
#include "TLeafI.h"
#include "TLeafF.h"
#include "TLeafD.h"
Go to the source code of this file.
|
| template<class T > |
| void | analyzeItem (std::string typ, const NTuple::_Data< T > *it, std::string &desc, std::string &block_name, std::string &var_name, long &lowerRange, long &upperRange, long &size) |
| |
| #define ROOTHISTCNV_RCWNTUPLECNV_CPP |
template<class T >
| void analyzeItem |
( |
std::string |
typ, |
|
|
const NTuple::_Data< T > * |
it, |
|
|
std::string & |
desc, |
|
|
std::string & |
block_name, |
|
|
std::string & |
var_name, |
|
|
long & |
lowerRange, |
|
|
long & |
upperRange, |
|
|
long & |
size |
|
) |
| |
Definition at line 31 of file RCWNTupleCnv.cpp.
{
std::string full_name = it->
name();
long item_size = sizeof(T);
long dimension = it->
length();
long ndim = it->
ndim()-1;
std::ostringstream text;
text << var_name;
text << '[';
}
{
std::string ind_blk, ind_var;
std::string ind = it->
index();
if (ind_blk != block_name) {
std::cerr << "ERROR: Index for CWNT variable " << ind_var
<< " is in a different block: " << ind_blk << std::endl;
}
text << ind_var;
}
else if ( it->
dim(ndim) > 1 ) {
}
for (
int i = ndim-1;
i>=0;
i-- ){
text <<
"][" << it->
dim(
i);
}
text << ']';
}
lowerRange = (long) it->
range().lower();
upperRange = (long) it->
range().upper();
} else {
lowerRange = 0;
upperRange = -1;
}
text << typ;
desc += text.str();
size += item_size * dimension;
}