#ifndef ROO_ABS_OPT_TEST_STATISTIC
#define ROO_ABS_OPT_TEST_STATISTIC
#include "Riosfwd.h"
#include "RooAbsTestStatistic.h"
#include "RooSetProxy.h"
#include "RooCategoryProxy.h"
class RooArgSet ;
class RooAbsData ;
class RooAbsReal ;
class RooAbsOptTestStatistic : public RooAbsTestStatistic {
public:
RooAbsOptTestStatistic() ;
RooAbsOptTestStatistic(const char *name, const char *title, RooAbsReal& real, RooAbsData& data,
const RooArgSet& projDeps, const char* rangeName=0, const char* addCoefRangeName=0,
Int_t nCPU=1, Bool_t interleave=kFALSE, Bool_t verbose=kTRUE, Bool_t splitCutRange=kFALSE,
Bool_t cloneInputData=kTRUE) ;
RooAbsOptTestStatistic(const RooAbsOptTestStatistic& other, const char* name=0);
virtual ~RooAbsOptTestStatistic();
virtual Double_t combinedValue(RooAbsReal** gofArray, Int_t nVal) const ;
RooAbsReal& function() { return *_funcClone ; }
const RooAbsReal& function() const { return *_funcClone ; }
RooAbsData& data() { return *_dataClone ; }
const RooAbsData& data() const { return *_dataClone ; }
Bool_t setData(RooAbsData& data, Bool_t cloneData=kTRUE) ;
protected:
friend class RooAbsReal ;
virtual Bool_t allowFunctionCache() { return kTRUE ; }
void constOptimizeTestStatistic(ConstOpCode opcode) ;
virtual Bool_t redirectServersHook(const RooAbsCollection& newServerList, Bool_t mustReplaceAll, Bool_t nameChange, Bool_t isRecursive) ;
virtual void printCompactTreeHook(ostream& os, const char* indent="") ;
virtual RooArgSet requiredExtraObservables() const { return RooArgSet() ; }
void optimizeCaching() ;
void optimizeConstantTerms(Bool_t) ;
RooArgSet* _normSet ;
RooArgSet* _funcCloneSet ;
RooAbsData* _dataClone ;
RooAbsReal* _funcClone ;
RooArgSet* _projDeps ;
Bool_t _ownData ;
ClassDef(RooAbsOptTestStatistic,2)
};
#endif
RooAbsOptTestStatistic.h:1 RooAbsOptTestStatistic.h:2 RooAbsOptTestStatistic.h:3 RooAbsOptTestStatistic.h:4 RooAbsOptTestStatistic.h:5 RooAbsOptTestStatistic.h:6 RooAbsOptTestStatistic.h:7 RooAbsOptTestStatistic.h:8 RooAbsOptTestStatistic.h:9 RooAbsOptTestStatistic.h:10 RooAbsOptTestStatistic.h:11 RooAbsOptTestStatistic.h:12 RooAbsOptTestStatistic.h:13 RooAbsOptTestStatistic.h:14 RooAbsOptTestStatistic.h:15 RooAbsOptTestStatistic.h:16 RooAbsOptTestStatistic.h:17 RooAbsOptTestStatistic.h:18 RooAbsOptTestStatistic.h:19 RooAbsOptTestStatistic.h:20 RooAbsOptTestStatistic.h:21 RooAbsOptTestStatistic.h:22 RooAbsOptTestStatistic.h:23 RooAbsOptTestStatistic.h:24 RooAbsOptTestStatistic.h:25 RooAbsOptTestStatistic.h:26 RooAbsOptTestStatistic.h:27 RooAbsOptTestStatistic.h:28 RooAbsOptTestStatistic.h:29 RooAbsOptTestStatistic.h:30 RooAbsOptTestStatistic.h:31 RooAbsOptTestStatistic.h:32 RooAbsOptTestStatistic.h:33 RooAbsOptTestStatistic.h:34 RooAbsOptTestStatistic.h:35 RooAbsOptTestStatistic.h:36 RooAbsOptTestStatistic.h:37 RooAbsOptTestStatistic.h:38 RooAbsOptTestStatistic.h:39 RooAbsOptTestStatistic.h:40 RooAbsOptTestStatistic.h:41 RooAbsOptTestStatistic.h:42 RooAbsOptTestStatistic.h:43 RooAbsOptTestStatistic.h:44 RooAbsOptTestStatistic.h:45 RooAbsOptTestStatistic.h:46 RooAbsOptTestStatistic.h:47 RooAbsOptTestStatistic.h:48 RooAbsOptTestStatistic.h:49 RooAbsOptTestStatistic.h:50 RooAbsOptTestStatistic.h:51 RooAbsOptTestStatistic.h:52 RooAbsOptTestStatistic.h:53 RooAbsOptTestStatistic.h:54 RooAbsOptTestStatistic.h:55 RooAbsOptTestStatistic.h:56 RooAbsOptTestStatistic.h:57 RooAbsOptTestStatistic.h:58 RooAbsOptTestStatistic.h:59 RooAbsOptTestStatistic.h:60 RooAbsOptTestStatistic.h:61 RooAbsOptTestStatistic.h:62 RooAbsOptTestStatistic.h:63 RooAbsOptTestStatistic.h:64 RooAbsOptTestStatistic.h:65 RooAbsOptTestStatistic.h:66 RooAbsOptTestStatistic.h:67 RooAbsOptTestStatistic.h:68 RooAbsOptTestStatistic.h:69 RooAbsOptTestStatistic.h:70 RooAbsOptTestStatistic.h:71 RooAbsOptTestStatistic.h:72