This file is indexed.

/usr/include/root/RooStats/HistFactory/EstimateSummary.h is in libroot-roofit-dev 5.34.00-2.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
// @(#)root/roostats:$Id:  cranmer $
// Author: Kyle Cranmer, Akira Shibata
/*************************************************************************
 * Copyright (C) 1995-2008, Rene Brun and Fons Rademakers.               *
 * All rights reserved.                                                  *
 *                                                                       *
 * For the licensing terms see $ROOTSYS/LICENSE.                         *
 * For the list of contributors see $ROOTSYS/README/CREDITS.             *
 *************************************************************************/


#ifndef ROOSTATS_ESTIMATESUMMARY_h
#define ROOSTATS_ESTIMATESUMMARY_h

#include "TH1.h"
#include <string>
#include <vector>
#include <map>
#include <iostream>
#include "TObject.h"


namespace RooStats{
namespace HistFactory{

struct  EstimateSummary : public TObject {

  enum ConstraintType{ Gaussian, Poisson };            
   
   struct NormFactor{
      std::string name;
      double val, high, low;
      bool constant;
   };


   class ShapeSys{
   public:
     ShapeSys() : name(""), hist(NULL) {;}
     std::string name;
     TH1* hist;
     ConstraintType constraint;
   };
      

   typedef std::vector<std::string> vecstring;
   typedef std::vector<TH1*> vechist;
   typedef std::pair<double, double> pairdouble;
   typedef std::map<std::string, std::pair<double, double> > mappair;
      
   // simple structure to hold necessary information about each channel
   EstimateSummary();
   virtual ~EstimateSummary();
   void Print(const char *opt = 0) const ;
   void AddSyst( const std::string & sname, TH1* low, TH1* high);
   bool operator==(const EstimateSummary &other) const ;
   bool CompareHisto( const TH1 * one, const TH1 * two) const ;
   
   
   //data members .
   std::string name; 
   std::string channel; 
   std::string normName;
   TH1* nominal;  // x pb per jet bin.  all histograms need index of binning to be consistent
   std::vector<std::string> systSourceForHist;
   std::vector<TH1*> lowHists; // x pb per jet bin for - variations over list of systematics
   std::vector<TH1*> highHists; // x pb per jet bin for + variations over list of systematics
   std::map<std::string, std::pair<double, double> > overallSyst; // "acceptance"->(0.8,1.2)
   std::pair<double, double> dummyForRoot;
   std::vector<NormFactor> normFactor;



  bool IncludeStatError; // Flag to implement Statistical errors for this sample
  ConstraintType StatConstraintType;  // The type of constraint binwise stat errors
  Double_t RelErrorThreshold; // The minimum relative uncertainty for a bin to use stat errors
  TH1* relStatError; // An (optional) externally provided shape for this error

  //  bool doShapeFactor; // A flag to include a ShapeFactor ParamatarizedHistogram
  std::string shapeFactorName; //
  std::vector<ShapeSys> shapeSysts; //

   ClassDef(RooStats::HistFactory::EstimateSummary,1)
};

}
}

#endif