File indexing completed on 2025-01-30 10:21:55
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013 #ifndef ROOT_Fit_SparseData
0014 #define ROOT_Fit_SparseData
0015
0016 #include "Fit/BinData.h"
0017 #include <vector>
0018 #include <memory>
0019
0020 namespace ROOT {
0021
0022 namespace Fit {
0023
0024
0025 class ProxyListBox;
0026
0027
0028
0029
0030
0031
0032
0033
0034
0035 class SparseData : public FitData {
0036 public:
0037
0038 SparseData(std::vector<double>& min, std::vector<double>& max);
0039
0040
0041 SparseData(const unsigned int dim, double min[], double max[]);
0042
0043
0044 SparseData(const SparseData & rhs);
0045
0046
0047 ~SparseData() override;
0048
0049
0050 SparseData & operator=(const SparseData & rhs);
0051
0052
0053 unsigned int NPoints() const;
0054
0055 unsigned int NDim() const;
0056
0057
0058 void Add(std::vector<double>& min, std::vector<double>& max,
0059 const double content, const double error = 1.0);
0060
0061 void GetPoint(const unsigned int i,
0062 std::vector<double>& min, std::vector<double>&max,
0063 double& content, double& error);
0064
0065
0066 void PrintList() const;
0067
0068
0069 void GetBinData(BinData&) const;
0070
0071 void GetBinDataIntegral(BinData&) const;
0072
0073 void GetBinDataNoZeros(BinData&) const;
0074
0075 private :
0076 std::unique_ptr<ProxyListBox> fList;
0077 };
0078
0079 }
0080
0081 }
0082
0083
0084
0085 #endif