Warning, file /include/root/RooAbsMCStudyModule.h was not indexed
or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef ROO_ABS_MC_STUDY_MODULE
0018 #define ROO_ABS_MC_STUDY_MODULE
0019
0020 #include "RooArgSet.h"
0021 #include "RooMCStudy.h"
0022 class RooAbsPdf;
0023 class RooDataSet ;
0024 class RooAbsData ;
0025 class RooAbsGenContext ;
0026 class RooFitResult ;
0027 class RooPlot ;
0028 class RooRealVar ;
0029
0030 class RooAbsMCStudyModule : public TNamed {
0031 public:
0032
0033 RooAbsMCStudyModule(const char* name, const char* title) ;
0034 RooAbsMCStudyModule(const RooAbsMCStudyModule& other) ;
0035
0036
0037 bool doInitializeInstance(RooMCStudy& ) ;
0038
0039
0040 virtual bool initializeInstance() {
0041 return true ;
0042 }
0043
0044
0045 virtual bool initializeRun(Int_t ) {
0046 return true ;
0047 }
0048
0049
0050
0051 virtual RooDataSet* finalizeRun() {
0052 return nullptr ;
0053 }
0054
0055
0056
0057 virtual bool processBeforeGen(Int_t ) {
0058 return true ;
0059 }
0060
0061
0062
0063
0064 virtual bool processBetweenGenAndFit(Int_t ) {
0065 return true ;
0066 }
0067
0068
0069 virtual bool processAfterFit(Int_t ) {
0070 return true ;
0071 }
0072
0073 protected:
0074
0075
0076
0077
0078
0079 RooFit::OwningPtr<RooFitResult> refit(RooAbsData* inGenSample=nullptr);
0080
0081
0082 RooAbsData* genSample() {
0083 return _mcs ? _mcs->_genSample : nullptr ;
0084 }
0085
0086
0087 RooAbsPdf* genModel() {
0088 return _mcs ? _mcs->_genModel : nullptr ;
0089 }
0090
0091
0092 RooAbsGenContext* genContext() {
0093 return _mcs ? _mcs->_genContext.get() : nullptr ;
0094 }
0095
0096
0097 RooArgSet* genInitParams() {
0098 return _mcs ? &_mcs->_genInitParams : nullptr ;
0099 }
0100
0101
0102 RooArgSet* genParams() {
0103 return _mcs ? &_mcs->_genParams : nullptr ;
0104 }
0105
0106
0107 const RooDataSet* genProtoData() {
0108 return _mcs ? _mcs->_genProtoData : nullptr ;
0109 }
0110
0111
0112 RooArgSet* projDeps() {
0113 return _mcs ? &_mcs->_projDeps : nullptr ;
0114 }
0115
0116
0117
0118
0119 RooArgSet* dependents() {
0120 return _mcs ? &_mcs->_dependents : nullptr ;
0121 }
0122
0123
0124 RooArgSet* allDependents() {
0125 return _mcs ? &_mcs->_allDependents : nullptr ;
0126 }
0127
0128
0129 RooAbsPdf* fitModel() {
0130 return _mcs ? _mcs->_fitModel : nullptr ;
0131 }
0132
0133
0134 RooArgSet* fitInitParams() {
0135 return _mcs ? &_mcs->_fitInitParams : nullptr ;
0136 }
0137
0138
0139 RooArgSet* fitParams() {
0140 return _mcs ? &_mcs-> _fitParams : nullptr ;
0141 }
0142
0143
0144 RooRealVar* nllVar() {
0145 return _mcs ? _mcs->_nllVar.get() : nullptr ;
0146 }
0147
0148
0149
0150
0151 RooLinkedList* fitOptList() {
0152 return _mcs ? &_mcs->_fitOptList : nullptr ;
0153 }
0154
0155
0156 bool extendedGen() {
0157 return _mcs ? _mcs->_extendedGen : false ;
0158 }
0159
0160
0161 bool binGenData() {
0162 return _mcs ? _mcs->_binGenData : false ;
0163 }
0164
0165
0166 double numExpGen() {
0167 return _mcs ? _mcs->_nExpGen : 0 ;
0168 }
0169
0170
0171 bool randProto() {
0172 return _mcs ? _mcs->_randProto : false ;
0173 }
0174
0175
0176 bool verboseGen() {
0177 return _mcs ? _mcs->_verboseGen : false ;
0178 }
0179
0180 private:
0181
0182 RooMCStudy* _mcs ;
0183
0184 ClassDefOverride(RooAbsMCStudyModule,0)
0185 } ;
0186
0187
0188 #endif
0189