16 #ifndef ROOSTATS_HybridResult
17 #define ROOSTATS_HybridResult
25 class HybridResult :
public HypoTestResult {
30 explicit HybridResult(
const char *name = 0);
33 HybridResult(
const char *name,
34 const std::vector<double>& testStat_sb_vals,
35 const std::vector<double>& testStat_b_vals,
36 bool sumLargerValues=
true);
40 virtual ~HybridResult();
42 void SetDataTestStatistics(
double testStat_data_val);
44 void Add(HybridResult* other);
46 HybridPlot* GetPlot(
const char* name,
const char* title,
int n_bins);
48 void PrintMore(
const char* options);
51 std::vector<double> GetTestStat_sb(){
return fTestStat_sb;}
54 std::vector<double> GetTestStat_b(){
return fTestStat_b;}
57 double GetTestStat_data(){
return fTestStat_data;}
60 Double_t NullPValue()
const;
63 Double_t AlternatePValue()
const;
66 Double_t CLbError()
const;
69 Double_t CLsplusbError()
const;
72 Double_t CLsError()
const;
76 std::vector<double> fTestStat_b;
77 std::vector<double> fTestStat_sb;
78 double fTestStat_data;
80 mutable bool fComputationsNulDoneFlag;
81 mutable bool fComputationsAltDoneFlag;
82 bool fSumLargerValues;
86 ClassDef(HybridResult,1)