Functions | |
std::map< RooFit::Detail::DataKey, RooSpan< const double > > | getDataSpans (RooAbsData const &data, std::string_view rangeName, std::string const &prefix, std::stack< std::vector< double > > &buffers, bool skipZeroWeights) |
Extract all content from a RooFit datasets as a map of spans. More... | |
std::map< RooFit::Detail::DataKey, RooSpan< const double > > RooFit::BatchModeDataHelpers::getDataSpans | ( | RooAbsData const & | data, |
std::string_view | rangeName, | ||
std::string const & | prefix, | ||
std::stack< std::vector< double > > & | buffers, | ||
bool | skipZeroWeights | ||
) |
Extract all content from a RooFit datasets as a map of spans.
Spans with the weights and squared weights will be also stored in the map, keyed with the names _weight
and the _weight_sumW2
. If the dataset is unweighted, these weight spans will only contain the single value 1.0
. Entries with zero weight will be skipped. If the input dataset is a RooDataHist, the output map will also contain an item for the key _bin_volume
with the bin volumes.
std::map
with spans keyed to name pointers. [in] | data | The input dataset. |
[in] | rangeName | Select only entries from the data in a given range (empty string for no range). |
[in] | prefix | A string prefix to use for all key names for the data map. |
[in] | buffers | Pass here an empty stack of double vectors, which will be used as memory for the data if the memory in the dataset object can't be used directly (e.g. because you used the range selection or the splitting by categories). |
[in] | skipZeroWeights | Skip entries with zero weight when filling the data spans. Be very careful with enabling it, because the user might not expect that the batch results are not aligned with the original dataset anymore! |
Definition at line 46 of file BatchModeDataHelpers.cxx.