This file is indexed.

/usr/include/root/RooAbsMCStudyModule.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
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
/*****************************************************************************
 * Project: RooFit                                                           *
 * Package: RooFitCore                                                       *
 *    File: $Id: RooAbsMCStudyModule.h,v 1.2 2007/05/11 09:11:30 verkerke Exp $
 * Authors:                                                                  *
 *   WV, Wouter Verkerke, UC Santa Barbara, verkerke@slac.stanford.edu       *
 *   DK, David Kirkby,    UC Irvine,         dkirkby@uci.edu                 *
 *                                                                           *
 * Copyright (c) 2000-2005, Regents of the University of California          *
 *                          and Stanford University. All rights reserved.    *
 *                                                                           *
 * Redistribution and use in source and binary forms,                        *
 * with or without modification, are permitted according to the terms        *
 * listed in LICENSE (http://roofit.sourceforge.net/license.txt)             *
 *****************************************************************************/

#ifndef ROO_ABS_MC_STUDY_MODULE
#define ROO_ABS_MC_STUDY_MODULE

#include "TList.h"
#include "RooArgSet.h"
#include "RooMCStudy.h"
class RooAbsPdf;
class RooDataSet ;
class RooAbsData ;
class RooAbsGenContext ;
class RooFitResult ;
class RooPlot ;
class RooRealVar ;

class RooAbsMCStudyModule : public TNamed {
public:

  RooAbsMCStudyModule(const char* name, const char* title) ;
  RooAbsMCStudyModule(const RooAbsMCStudyModule& other) ;
  virtual ~RooAbsMCStudyModule() {} ;

  // Initializer method called upon attachement to given RooMCStudy object
  Bool_t doInitializeInstance(RooMCStudy& /*study*/) ; 

  virtual Bool_t initializeInstance() { 
    // Initializer called immediately after attachment to RooMCStudy object and initialization of module base class
    return kTRUE ; 
  } 

  virtual Bool_t initializeRun(Int_t /*numSamples*/) { 
    // Method called at the beginning of each RooMCStudy run
    return kTRUE ; 
  } 

  virtual RooDataSet* finalizeRun() { 
    // Method called at the end of each RooMCStudy run. If a RooDataSet is returned, it must have a length equal to 
    // the number of toy experiments performed and will merged with the fitpar dataset of RooMCStudy.
    return 0 ; 
  }

  virtual Bool_t processBeforeGen(Int_t /*sampleNum*/) { 
    // Method called after resetting of generator parameters to initial values and before call to generator context
    // Any modifications to generator parameters will affect next generation operation (only)
    return kTRUE ; 
  }


  virtual Bool_t processBetweenGenAndFit(Int_t /*sampleNum*/) { 
    // Method called after generation of toy data sample and resetting of fit parameters to initial values and before
    // actual fit is performed. Any modifications to fit parameters will apply to next fit operation. Note that setConstant
    // flag of fit parameters are not explicitly reset by RooMCStudy, so any changes made to these flags here will persist
    return kTRUE ; 
  }

  virtual Bool_t processAfterFit(Int_t /*sampleNum*/) { 
    // Method called after fit has been performed.
    return kTRUE ; 
  }

protected:

   // Interface methods to RooMCStudy objects, 
   // which are only functional after module has been attached to a RooMCStudy object

   RooFitResult* refit(RooAbsData* inGenSample=0) { 
     // Refit model using orignal or specified data sample
     if (_mcs) return _mcs->refit(inGenSample) ; else return 0 ; 
   }

   RooAbsData* genSample() { 
     // Return generate sample
     return _mcs ? _mcs->_genSample : 0 ; 
   }
   RooAbsPdf* genModel() {
     // Return generator pdf
     return _mcs ? _mcs->_genModel : 0 ; 
   }

   // Accessor for generator context, generator parameters,	prototype data and projected dependents
   RooAbsGenContext* genContext() { 
     // Return generator context
     return _mcs ? _mcs->_genContext : 0 ; 
   }
   RooArgSet* genInitParams() { 
     // Return initial value of generator model parameters
     return _mcs ? _mcs->_genInitParams : 0 ; 
   } 
   RooArgSet* genParams() { 
     // Return current value of generator model parameters
     return _mcs ? _mcs->_genParams : 0 ; 
   } 
   const RooDataSet* genProtoData() { 
     // Return generator prototype data provided by user
     return _mcs ? _mcs->_genProtoData : 0 ; 
   }
   RooArgSet* projDeps() { 
     // Return projected observables
     return _mcs ? &_mcs->_projDeps : 0 ; 
   }

   // Accessors for fit observables, fit model, current and initial fit parameters and NLL value
   RooArgSet* dependents() { 
     // Return fit model observables
     return _mcs ? &_mcs->_dependents : 0 ; 
   } 
   RooArgSet* allDependents() { 
     // Returna all observables
     return _mcs ? &_mcs->_allDependents : 0 ; 
   }
   RooAbsPdf* fitModel() { 
     // Return fit model
     return _mcs ? _mcs->_fitModel : 0 ; 
   }
   RooArgSet* fitInitParams() { 
     // Return initial value of parameters of fit model
     return _mcs ? _mcs->_fitInitParams : 0 ; 
   }
   RooArgSet* fitParams() { 
     // Return current value of parameters of fit model
     return _mcs ? _mcs-> _fitParams : 0 ; 
   }
   RooRealVar* nllVar() { 
     // Return pointer to RooRealVar holding minimized -log(L) value
     return _mcs ? _mcs->_nllVar : 0 ; 
   }
  
   // Accessors for fit options, generator annd MCstudy configuration flags
   const char* fitOptions() { 
     // Return fit option string provided user
     return _mcs ? _mcs->_fitOptions.Data() : 0 ; 
   }
   RooLinkedList* fitOptList() { 
     // Return list of fit options provided by user
     return _mcs ? &_mcs->_fitOptList : 0 ; 
   }
   Bool_t extendedGen() { 
     // If true extended mode generation is requested
     return _mcs ? _mcs->_extendedGen : 0 ; 
   }
   Bool_t binGenData() { 
     // If true binning of data between generating and fitting is requested
     return _mcs ? _mcs->_binGenData : 0 ; 
   }
   Double_t numExpGen() { 
     // Return expected number of events from generator model
     return _mcs ? _mcs->_nExpGen : 0 ; 
   }
   Bool_t randProto() { 
     // If true randomization of prototype data order is requested
     return _mcs ? _mcs->_randProto : 0 ; 
   }
   Bool_t verboseGen() { 
     // If true verbose message in the generation step is requested
     return _mcs ? _mcs->_verboseGen : 0 ; 
   }

private:

  RooMCStudy* _mcs ; // Pointer to RooMCStudy object module is attached to
	
  ClassDef(RooAbsMCStudyModule,0) // Monte Carlo study manager add-on module
} ;


#endif