0

我正在使用 CERN 的 ROOT 框架,并且在存储和检索简单数组时遇到了一些麻烦。似乎我最好的选择是使用 TNTuple 类,但我找不到一种方法可以轻松地以逐个数字的方式访问存储在 TNTuple 中的数据。真的,我想做的是完全按照我通常使用浮点数组的方式使用 TNTuple,或者轻松地将 TNTuple 转换为浮点数组。有没有办法做到这一点?

4

2 回答 2

0

相反,我建议使用数组类 -TArrayF - 非常简单。

TArrayF

于 2013-11-22T17:51:34.903 回答
0

TNtuple通过 暴露各个列GetArgs(),例如

// make dummy ntuple with some data
TNtuple nt("nt", "", "a:b:c");
nt.Fill(0, 0, 0);
nt.Fill(1, 1, 1);

// show the data we have
nt.Scan();
************************************************
*    Row   *         a *         b *         c *
************************************************
*        0 *         0 *         0 *         0 *
*        1 *         1 *         1 *         1 *
************************************************
(Long64_t)2

for (int row = 0; row < nt.GetEntries(); ++row) {
    nt.GetEntry(row);

    // run through a, b, c
    for (int column = 0; nt.GetNvar(); ++column) {
      nt.GetArgs()[column];
    }
}
于 2014-04-17T13:31:09.217 回答