Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-12-16 10:29:44

0001 /*
0002  * Project: RooFit
0003  *
0004  * Copyright (c) 2023, CERN
0005  *
0006  * Redistribution and use in source and binary forms,
0007  * with or without modification, are permitted according to the terms
0008  * listed in LICENSE (http://roofit.sourceforge.net/license.txt)
0009  */
0010 
0011 #ifndef RooStats_Heaviside
0012 #define RooStats_Heaviside
0013 
0014 #include "RooAbsReal.h"
0015 #include "RooRealProxy.h"
0016 #include "RooCategoryProxy.h"
0017 #include "RooAbsCategory.h"
0018 
0019 namespace RooStats {
0020 
0021    class Heaviside : public RooAbsReal {
0022    public:
0023       Heaviside() {} ;
0024       Heaviside(const char *name, const char *title,
0025             RooAbsReal& _x,
0026             RooAbsReal& _c);
0027       Heaviside(const Heaviside& other, const char* name=nullptr) ;
0028       TObject* clone(const char* newname=nullptr) const override { return new Heaviside(*this,newname); }
0029 
0030    protected:
0031 
0032       RooRealProxy x ;
0033       RooRealProxy c ;
0034 
0035       double evaluate() const override ;
0036 
0037    private:
0038 
0039       ClassDefOverride(Heaviside,1);
0040    };
0041 }
0042 
0043 #endif