Geant4  10.03.p01
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
tools::aida Namespace Reference

Functions

template<class T >
bool to_vector (base_ntu &a_ntu, std::vector< T > &a_vec)
 

Function Documentation

template<class T >
bool tools::aida::to_vector ( base_ntu &  a_ntu,
std::vector< T > &  a_vec 
)

Definition at line 41 of file G4XmlRNtupleManager.cc.

41  {
42  a_vec.clear();
43  const std::vector<base_col*>& cols = a_ntu.cols();
44  if(cols.empty()) return false;
45  base_col* _base_col = cols.front();
46  aida_col<T>* _col = safe_cast<base_col, aida_col<T> >(*_base_col);
47  if(!_col) return false;
48  a_ntu.start();
49  uint64 _rows = a_ntu.rows();
50  a_vec.resize(_rows);
51  T v;
52  {for(uint64 row=0;row<_rows;row++) {
53  if(!a_ntu.next()) {a_vec.clear();return false;}
54  if(!_col->get_entry(v)) {a_vec.clear();return false;}
55  a_vec[row] = v;
56  }}
57  return true;
58 }
unsigned long long uint64
Definition: config.h:32