Data structure to keep multiple uncertainties


I was wondering if there was any data structure in ROOT designed to store multiple per-point uncertainties.

In my specific problem I calculate 1D spectra where each point carries statistical and multiple systematic uncertainties (some of them point-by-point correlated and other uncorrelated). I would like to keep all this information in one compact object, and am looking for some functionality which would allow me easy access to the data points (e.g. for integrals, rebinning). I am fine with manually propagating uncertainties to extracted quantities.

Right now I could think of abusing THStack for that, but it would require me to store redundant information and force me to manually unpack the contained data. To me my problem appears general enough in scope for ROOT to possibly provide this functionality in some specialized class somewhere.

Thanks for pointers,