From 7db0dca684173f57c649bf6cf93db067487ab60e Mon Sep 17 00:00:00 2001 From: Jonas Rembser Date: Sun, 21 Nov 2021 10:02:15 +0100 Subject: [PATCH] [RF] Move RooFit headers not starting with `Roo` in RooFit directory In the v6.26 development cycle cycle, some RooFit helper header files whose names don't start with the `Roo` prefix sneaked into the RooFitCore library. These headers have the overly generic names `Floats.h` and `UniqueId.h`, which calls for trouble in environments where the ROOT headers are directly installed in the main system include path (most Linux distributions). To prevent any possible issues, this commit proposes and follows new conventions for RooFit headers: * Installed RooFit headers must start with `Roo*` or must be located in a subdirectory starting with `Roo*` (e.g. RooFit or RooStats). * Similarly, if the class name doesn't start with Roo, it has to go in a `Roo*` namespace (usually `RooFit`) * Free functions always need to go in this namespace * For implmentation details that we can't avoid installing, we can use a `Roo*::Detail` namespace like we have with `ROOT::Detail` (same with `Experimental`) We should also keep in mind what we established in PR #9078: * `inc/` is for installed headers * `res/` is for headers that are only used at compile time of other ROOT components * Headers only used within a library go to `src/` This means that there is no need in specifiying the headers to install manually in `roofit/rofitcore/CMakeLists.txt`. We can glob for all the headers fulfilling the criteria above. --- roofit/roofit/inc/RooLagrangianMorphFunc.h | 4 +- roofit/roofit/src/RooLagrangianMorphFunc.cxx | 26 +++--- roofit/roofitcore/CMakeLists.txt | 28 +++--- roofit/roofitcore/inc/Floats.h | 26 ------ roofit/roofitcore/inc/RooAddPdf.h | 2 +- roofit/roofitcore/inc/RooArgSet.h | 6 +- roofit/roofitcore/inc/RooFit/Floats.h | 35 ++++++++ .../TestStatistics/ConstantTermsOptimizer.h | 0 .../LikelihoodGradientWrapper.h | 0 .../TestStatistics/LikelihoodSerial.h | 2 +- .../TestStatistics/LikelihoodWrapper.h | 0 .../TestStatistics/MinuitFcnGrad.h | 6 +- .../inc/{ => RooFit}/TestStatistics/RooAbsL.h | 0 .../{ => RooFit}/TestStatistics/RooBinnedL.h | 2 +- .../{ => RooFit}/TestStatistics/RooRealL.h | 0 .../TestStatistics/RooSubsidiaryL.h | 2 +- .../inc/{ => RooFit}/TestStatistics/RooSumL.h | 4 +- .../TestStatistics/RooUnbinnedL.h | 2 +- .../TestStatistics/buildLikelihood.h | 4 +- .../TestStatistics/optional_parameter_types.h | 0 roofit/roofitcore/inc/RooFit/UniqueId.h | 90 +++++++++++++++++++ roofit/roofitcore/inc/RooLinearCombination.h | 10 +-- roofit/roofitcore/inc/RooMinimizer.h | 4 +- roofit/roofitcore/inc/UniqueId.h | 75 ---------------- .../TestStatistics/LikelihoodGradientJob.h | 2 +- .../res/TestStatistics/LikelihoodJob.h | 2 +- .../roofitcore/src/RooLinearCombination.cxx | 13 ++- .../TestStatistics/ConstantTermsOptimizer.cxx | 2 +- .../LikelihoodGradientWrapper.cxx | 2 +- .../src/TestStatistics/LikelihoodJob.cxx | 10 +-- .../src/TestStatistics/LikelihoodSerial.cxx | 12 +-- .../src/TestStatistics/LikelihoodWrapper.cxx | 10 +-- .../src/TestStatistics/MinuitFcnGrad.cxx | 4 +- .../roofitcore/src/TestStatistics/RooAbsL.cxx | 4 +- .../src/TestStatistics/RooBinnedL.cxx | 2 +- .../src/TestStatistics/RooRealL.cxx | 4 +- .../src/TestStatistics/RooSubsidiaryL.cxx | 2 +- .../roofitcore/src/TestStatistics/RooSumL.cxx | 4 +- .../src/TestStatistics/RooUnbinnedL.cxx | 2 +- .../src/TestStatistics/buildLikelihood.cxx | 10 +-- .../optional_parameter_types.cxx | 2 +- .../test/TestStatistics/RooRealL.cpp | 4 +- .../testLikelihoodGradientJob.cpp | 6 +- .../TestStatistics/testLikelihoodSerial.cxx | 12 +-- 44 files changed, 230 insertions(+), 207 deletions(-) delete mode 100644 roofit/roofitcore/inc/Floats.h create mode 100644 roofit/roofitcore/inc/RooFit/Floats.h rename roofit/roofitcore/inc/{ => RooFit}/TestStatistics/ConstantTermsOptimizer.h (100%) rename roofit/roofitcore/inc/{ => RooFit}/TestStatistics/LikelihoodGradientWrapper.h (100%) rename roofit/roofitcore/inc/{ => RooFit}/TestStatistics/LikelihoodSerial.h (95%) rename roofit/roofitcore/inc/{ => RooFit}/TestStatistics/LikelihoodWrapper.h (100%) rename roofit/roofitcore/inc/{ => RooFit}/TestStatistics/MinuitFcnGrad.h (96%) rename roofit/roofitcore/inc/{ => RooFit}/TestStatistics/RooAbsL.h (100%) rename roofit/roofitcore/inc/{ => RooFit}/TestStatistics/RooBinnedL.h (95%) rename roofit/roofitcore/inc/{ => RooFit}/TestStatistics/RooRealL.h (100%) rename roofit/roofitcore/inc/{ => RooFit}/TestStatistics/RooSubsidiaryL.h (97%) rename roofit/roofitcore/inc/{ => RooFit}/TestStatistics/RooSumL.h (93%) rename roofit/roofitcore/inc/{ => RooFit}/TestStatistics/RooUnbinnedL.h (97%) rename roofit/roofitcore/inc/{ => RooFit}/TestStatistics/buildLikelihood.h (94%) rename roofit/roofitcore/inc/{ => RooFit}/TestStatistics/optional_parameter_types.h (100%) create mode 100644 roofit/roofitcore/inc/RooFit/UniqueId.h delete mode 100644 roofit/roofitcore/inc/UniqueId.h diff --git a/roofit/roofit/inc/RooLagrangianMorphFunc.h b/roofit/roofit/inc/RooLagrangianMorphFunc.h index d48870385e8b3..8886d4ba7f22f 100644 --- a/roofit/roofit/inc/RooLagrangianMorphFunc.h +++ b/roofit/roofit/inc/RooLagrangianMorphFunc.h @@ -52,7 +52,7 @@ #ifndef ROO_LAGRANGIAN_MORPH #define ROO_LAGRANGIAN_MORPH -#include "Floats.h" +#include "RooFit/Floats.h" #include "RooAbsArg.h" #include "RooAbsReal.h" #include "RooArgList.h" @@ -212,7 +212,7 @@ class RooLagrangianMorphFunc : public RooAbsReal { public: /// length of floating point digits precision supported by implementation. - static constexpr double implementedPrecision = SuperFloatPrecision::digits10; + static constexpr double implementedPrecision = RooFit::SuperFloatPrecision::digits10; void importToWorkspace(RooWorkspace *ws, const RooAbsReal *object); void importToWorkspace(RooWorkspace *ws, RooAbsData *object); diff --git a/roofit/roofit/src/RooLagrangianMorphFunc.cxx b/roofit/roofit/src/RooLagrangianMorphFunc.cxx index 11ea37dc97725..acbcc72070081 100644 --- a/roofit/roofit/src/RooLagrangianMorphFunc.cxx +++ b/roofit/roofit/src/RooLagrangianMorphFunc.cxx @@ -118,7 +118,7 @@ void writeMatrixToStreamT(const MatrixT &matrix, std::ostream &stream) { for (size_t i = 0; i < size(matrix); ++i) { for (size_t j = 0; j < size(matrix); ++j) { #ifdef USE_UBLAS - stream << std::setprecision(SuperFloatPrecision::digits10) << matrix(i, j) + stream << std::setprecision(RooFit::SuperFloatPrecision::digits10) << matrix(i, j) << "\t"; #else stream << matrix(i, j) << "\t"; @@ -157,7 +157,7 @@ inline void writeMatrixToFileT(const MatrixT &matrix, const char *fname) { #pragma GCC diagnostic pop -typedef boost::numeric::ublas::matrix Matrix; +typedef boost::numeric::ublas::matrix Matrix; //////////////////////////////////////////////////////////////////////////////// /// write a matrix @@ -165,7 +165,7 @@ typedef boost::numeric::ublas::matrix Matrix; inline void printMatrix(const Matrix &mat) { for (size_t i = 0; i < mat.size1(); ++i) { for (size_t j = 0; j < mat.size2(); ++j) { - // std::cout << std::setprecision(SuperFloatPrecision::digits10) << + // std::cout << std::setprecision(RooFit::SuperFloatPrecision::digits10) << // mat(i,j) << " ,\t"; } std::cout << std::endl; @@ -183,7 +183,7 @@ template <> inline size_t size(const Matrix &matrix) { /// create a new diagonal matrix of size n inline Matrix diagMatrix(size_t n) { - return boost::numeric::ublas::identity_matrix(n); + return boost::numeric::ublas::identity_matrix(n); } //////////////////////////////////////////////////////////////////////////////// @@ -222,9 +222,9 @@ inline Matrix operator*(const Matrix &m, const Matrix &otherM) { //////////////////////////////////////////////////////////////////////////////// /// calculate the inverse of a matrix, returning the condition -inline SuperFloat invertMatrix(const Matrix &matrix, Matrix &inverse) { +inline RooFit::SuperFloat invertMatrix(const Matrix &matrix, Matrix &inverse) { boost::numeric::ublas::permutation_matrix pm(size(matrix)); - SuperFloat mnorm = norm_inf(matrix); + RooFit::SuperFloat mnorm = norm_inf(matrix); Matrix lu(matrix); try { int res = lu_factorize(lu, pm); @@ -239,8 +239,8 @@ inline SuperFloat invertMatrix(const Matrix &matrix, Matrix &inverse) { // coutE(Eval) << "boost::numberic::ublas error: matrix is not invertible!" // << std::endl; } - SuperFloat inorm = norm_inf(inverse); - SuperFloat condition = mnorm * inorm; + RooFit::SuperFloat inorm = norm_inf(inverse); + RooFit::SuperFloat condition = mnorm * inorm; return condition; } @@ -359,15 +359,15 @@ template inline void assignElement(A &a, const B &b) { template inline MatrixT readMatrixFromStreamT(std::istream &stream) { - std::vector> matrix; - std::vector line; + std::vector> matrix; + std::vector line; while (!stream.eof()) { if (stream.peek() == '\n') { stream.get(); stream.peek(); continue; } - SuperFloat val; + RooFit::SuperFloat val; stream >> val; line.push_back(val); while (stream.peek() == ' ' || stream.peek() == '\t') { @@ -1358,7 +1358,7 @@ buildSampleWeights(T1 &weights, const char *fname, // build the formula with the correct normalization RooLinearCombination *sampleformula = new RooLinearCombination(name_full.Data()); for (auto const &formulait : formulas) { - const SuperFloat val(inverse(formulaidx, sampleidx)); + const RooFit::SuperFloat val(inverse(formulaidx, sampleidx)); sampleformula->add(val, formulait.second.get()); formulaidx++; } @@ -1854,7 +1854,7 @@ inline void RooLagrangianMorphFunc::updateSampleWeights() { cxcoutP(ObjectHandling) << "updating formula for sample '" << sample << "'" << std::endl; for (size_t formulaidx = 0; formulaidx < n; ++formulaidx) { - const SuperFloat val(cache->_inverse(formulaidx, sampleidx)); + const RooFit::SuperFloat val(cache->_inverse(formulaidx, sampleidx)); #ifdef USE_UBLAS if (val != val) { #else diff --git a/roofit/roofitcore/CMakeLists.txt b/roofit/roofitcore/CMakeLists.txt index 39502f0f93a98..708bfb6b4d2a8 100644 --- a/roofit/roofitcore/CMakeLists.txt +++ b/roofit/roofitcore/CMakeLists.txt @@ -15,7 +15,7 @@ endif() ROOT_STANDARD_LIBRARY_PACKAGE(RooFitCore HEADERS - Floats.h + RooFit/Floats.h Roo1DTable.h RooAbsAnaConvPdf.h RooAbsArg.h @@ -237,19 +237,19 @@ ROOT_STANDARD_LIBRARY_PACKAGE(RooFitCore RooFitLegacy/RooNameSet.h RooFitLegacy/RooSetPair.h RooFitLegacy/RooTreeData.h - TestStatistics/ConstantTermsOptimizer.h - TestStatistics/LikelihoodGradientWrapper.h - TestStatistics/LikelihoodWrapper.h - TestStatistics/LikelihoodSerial.h - TestStatistics/MinuitFcnGrad.h - TestStatistics/RooAbsL.h - TestStatistics/RooBinnedL.h - TestStatistics/RooSubsidiaryL.h - TestStatistics/RooSumL.h - TestStatistics/RooRealL.h - TestStatistics/RooUnbinnedL.h - TestStatistics/optional_parameter_types.h - TestStatistics/buildLikelihood.h + RooFit/TestStatistics/ConstantTermsOptimizer.h + RooFit/TestStatistics/LikelihoodGradientWrapper.h + RooFit/TestStatistics/LikelihoodWrapper.h + RooFit/TestStatistics/LikelihoodSerial.h + RooFit/TestStatistics/MinuitFcnGrad.h + RooFit/TestStatistics/RooAbsL.h + RooFit/TestStatistics/RooBinnedL.h + RooFit/TestStatistics/RooSubsidiaryL.h + RooFit/TestStatistics/RooSumL.h + RooFit/TestStatistics/RooRealL.h + RooFit/TestStatistics/RooUnbinnedL.h + RooFit/TestStatistics/optional_parameter_types.h + RooFit/TestStatistics/buildLikelihood.h SOURCES src/BidirMMapPipe.cxx src/BidirMMapPipe.h diff --git a/roofit/roofitcore/inc/Floats.h b/roofit/roofitcore/inc/Floats.h deleted file mode 100644 index 8d3f4b8dc0c23..0000000000000 --- a/roofit/roofitcore/inc/Floats.h +++ /dev/null @@ -1,26 +0,0 @@ -/* -*- mode: c++ -*- ********************************************************* - * Project: RooFit * - * * - * authors: * - * Lydia Brenner (lbrenner@cern.ch), Carsten Burgard (cburgard@cern.ch) * - * Katharina Ecker (kecker@cern.ch), Adam Kaluza (akaluza@cern.ch) * - *****************************************************************************/ - -#ifndef ROO_LAGRANGIAN_MORPH_FLOAT -#define ROO_LAGRANGIAN_MORPH_FLOAT - -#ifdef USE_UBLAS -#include -#endif - -#include -#ifdef USE_UBLAS -typedef boost::multiprecision::number> - SuperFloat; -typedef std::numeric_limits SuperFloatPrecision; -#else -typedef double SuperFloat; -typedef std::numeric_limits SuperFloatPrecision; -#endif - -#endif diff --git a/roofit/roofitcore/inc/RooAddPdf.h b/roofit/roofitcore/inc/RooAddPdf.h index b13c11c9e161a..64a686669698d 100644 --- a/roofit/roofitcore/inc/RooAddPdf.h +++ b/roofit/roofitcore/inc/RooAddPdf.h @@ -145,7 +145,7 @@ class RooAddPdf : public RooAbsPdf { private: std::pair getNormAndCache(const RooArgSet* defaultNorm = nullptr) const; - mutable UniqueId::Value_t _idOfLastUsedNormSet = UniqueId::nullval; //! + mutable RooFit::UniqueId::Value_t _idOfLastUsedNormSet = RooFit::UniqueId::nullval; //! mutable std::unique_ptr _copyOfLastNormSet = nullptr; //! void finalizeConstruction(); diff --git a/roofit/roofitcore/inc/RooArgSet.h b/roofit/roofitcore/inc/RooArgSet.h index f967a3e28d90c..f4b42a62f0050 100644 --- a/roofit/roofitcore/inc/RooArgSet.h +++ b/roofit/roofitcore/inc/RooArgSet.h @@ -18,7 +18,7 @@ #include "RooAbsCollection.h" #include "RooAbsArg.h" -#include "UniqueId.h" +#include "RooFit/UniqueId.h" class RooArgList ; @@ -164,7 +164,7 @@ class RooArgSet : public RooAbsCollection { /// This ID can be used to check whether two RooAbsData are the same object, /// which is safer than memory address comparisons that might result in false /// positives when memory is recycled. - UniqueId const& uniqueId() const { return _uniqueId; } + RooFit::UniqueId const& uniqueId() const { return _uniqueId; } protected: Bool_t checkForDup(const RooAbsArg& arg, Bool_t silent) const ; @@ -203,7 +203,7 @@ class RooArgSet : public RooAbsCollection { //to leak depending if RooArgSets are still alive. This depends on the order of destructions. static MemPool* memPool(); #endif - const UniqueId _uniqueId; //! + const RooFit::UniqueId _uniqueId; //! ClassDefOverride(RooArgSet,1) // Set of RooAbsArg objects }; diff --git a/roofit/roofitcore/inc/RooFit/Floats.h b/roofit/roofitcore/inc/RooFit/Floats.h new file mode 100644 index 0000000000000..31b6d707c7a84 --- /dev/null +++ b/roofit/roofitcore/inc/RooFit/Floats.h @@ -0,0 +1,35 @@ +/* + * Project: RooFit + * Authors: + * Lydia Brenner (lbrenner@cern.ch), Carsten Burgard (cburgard@cern.ch) + * Katharina Ecker (kecker@cern.ch), Adam Kaluza (akaluza@cern.ch) + * + * Copyright (c) 2021, CERN + * + * 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 roofit_roofitcore_RooFit_Floats_h +#define roofit_roofitcore_RooFit_Floats_h + +#ifdef USE_UBLAS +#include +#endif + +#include + +namespace RooFit { + +#ifdef USE_UBLAS +typedef boost::multiprecision::number> SuperFloat; +typedef std::numeric_limits SuperFloatPrecision; +#else +typedef double SuperFloat; +typedef std::numeric_limits SuperFloatPrecision; +#endif + +} // namespace RooFit + +#endif diff --git a/roofit/roofitcore/inc/TestStatistics/ConstantTermsOptimizer.h b/roofit/roofitcore/inc/RooFit/TestStatistics/ConstantTermsOptimizer.h similarity index 100% rename from roofit/roofitcore/inc/TestStatistics/ConstantTermsOptimizer.h rename to roofit/roofitcore/inc/RooFit/TestStatistics/ConstantTermsOptimizer.h diff --git a/roofit/roofitcore/inc/TestStatistics/LikelihoodGradientWrapper.h b/roofit/roofitcore/inc/RooFit/TestStatistics/LikelihoodGradientWrapper.h similarity index 100% rename from roofit/roofitcore/inc/TestStatistics/LikelihoodGradientWrapper.h rename to roofit/roofitcore/inc/RooFit/TestStatistics/LikelihoodGradientWrapper.h diff --git a/roofit/roofitcore/inc/TestStatistics/LikelihoodSerial.h b/roofit/roofitcore/inc/RooFit/TestStatistics/LikelihoodSerial.h similarity index 95% rename from roofit/roofitcore/inc/TestStatistics/LikelihoodSerial.h rename to roofit/roofitcore/inc/RooFit/TestStatistics/LikelihoodSerial.h index 104abc972f2d2..63ed2a266c696 100644 --- a/roofit/roofitcore/inc/TestStatistics/LikelihoodSerial.h +++ b/roofit/roofitcore/inc/RooFit/TestStatistics/LikelihoodSerial.h @@ -14,7 +14,7 @@ #ifndef ROOT_ROOFIT_LikelihoodSerial #define ROOT_ROOFIT_LikelihoodSerial -#include +#include #include "RooArgList.h" #include "Math/MinimizerOptions.h" diff --git a/roofit/roofitcore/inc/TestStatistics/LikelihoodWrapper.h b/roofit/roofitcore/inc/RooFit/TestStatistics/LikelihoodWrapper.h similarity index 100% rename from roofit/roofitcore/inc/TestStatistics/LikelihoodWrapper.h rename to roofit/roofitcore/inc/RooFit/TestStatistics/LikelihoodWrapper.h diff --git a/roofit/roofitcore/inc/TestStatistics/MinuitFcnGrad.h b/roofit/roofitcore/inc/RooFit/TestStatistics/MinuitFcnGrad.h similarity index 96% rename from roofit/roofitcore/inc/TestStatistics/MinuitFcnGrad.h rename to roofit/roofitcore/inc/RooFit/TestStatistics/MinuitFcnGrad.h index f54ca06cfa112..a6a5ec645a396 100644 --- a/roofit/roofitcore/inc/TestStatistics/MinuitFcnGrad.h +++ b/roofit/roofitcore/inc/RooFit/TestStatistics/MinuitFcnGrad.h @@ -15,9 +15,9 @@ #include "RooArgList.h" #include "RooRealVar.h" -#include "TestStatistics/RooAbsL.h" -#include "TestStatistics/LikelihoodWrapper.h" -#include "TestStatistics/LikelihoodGradientWrapper.h" +#include +#include +#include #include "RooAbsMinimizerFcn.h" #include diff --git a/roofit/roofitcore/inc/TestStatistics/RooAbsL.h b/roofit/roofitcore/inc/RooFit/TestStatistics/RooAbsL.h similarity index 100% rename from roofit/roofitcore/inc/TestStatistics/RooAbsL.h rename to roofit/roofitcore/inc/RooFit/TestStatistics/RooAbsL.h diff --git a/roofit/roofitcore/inc/TestStatistics/RooBinnedL.h b/roofit/roofitcore/inc/RooFit/TestStatistics/RooBinnedL.h similarity index 95% rename from roofit/roofitcore/inc/TestStatistics/RooBinnedL.h rename to roofit/roofitcore/inc/RooFit/TestStatistics/RooBinnedL.h index 1ff7e6d982435..aec81da003440 100644 --- a/roofit/roofitcore/inc/TestStatistics/RooBinnedL.h +++ b/roofit/roofitcore/inc/RooFit/TestStatistics/RooBinnedL.h @@ -13,7 +13,7 @@ #ifndef ROOT_ROOFIT_TESTSTATISTICS_RooBinnedL #define ROOT_ROOFIT_TESTSTATISTICS_RooBinnedL -#include +#include #include "RooAbsReal.h" #include diff --git a/roofit/roofitcore/inc/TestStatistics/RooRealL.h b/roofit/roofitcore/inc/RooFit/TestStatistics/RooRealL.h similarity index 100% rename from roofit/roofitcore/inc/TestStatistics/RooRealL.h rename to roofit/roofitcore/inc/RooFit/TestStatistics/RooRealL.h diff --git a/roofit/roofitcore/inc/TestStatistics/RooSubsidiaryL.h b/roofit/roofitcore/inc/RooFit/TestStatistics/RooSubsidiaryL.h similarity index 97% rename from roofit/roofitcore/inc/TestStatistics/RooSubsidiaryL.h rename to roofit/roofitcore/inc/RooFit/TestStatistics/RooSubsidiaryL.h index ef387019c03e0..b315995c13882 100644 --- a/roofit/roofitcore/inc/TestStatistics/RooSubsidiaryL.h +++ b/roofit/roofitcore/inc/RooFit/TestStatistics/RooSubsidiaryL.h @@ -13,7 +13,7 @@ #ifndef ROOT_ROOFIT_TESTSTATISTICS_RooSubsidiaryL #define ROOT_ROOFIT_TESTSTATISTICS_RooSubsidiaryL -#include "TestStatistics/RooAbsL.h" +#include #include "RooArgList.h" #include "RooArgSet.h" diff --git a/roofit/roofitcore/inc/TestStatistics/RooSumL.h b/roofit/roofitcore/inc/RooFit/TestStatistics/RooSumL.h similarity index 93% rename from roofit/roofitcore/inc/TestStatistics/RooSumL.h rename to roofit/roofitcore/inc/RooFit/TestStatistics/RooSumL.h index 280a8795622cb..b3911ba20e913 100644 --- a/roofit/roofitcore/inc/TestStatistics/RooSumL.h +++ b/roofit/roofitcore/inc/RooFit/TestStatistics/RooSumL.h @@ -13,8 +13,8 @@ #ifndef ROOT_ROOFIT_TESTSTATISTICS_RooSumL #define ROOT_ROOFIT_TESTSTATISTICS_RooSumL -#include "TestStatistics/RooAbsL.h" -#include "TestStatistics/optional_parameter_types.h" +#include +#include #include "Math/Util.h" // KahanSum diff --git a/roofit/roofitcore/inc/TestStatistics/RooUnbinnedL.h b/roofit/roofitcore/inc/RooFit/TestStatistics/RooUnbinnedL.h similarity index 97% rename from roofit/roofitcore/inc/TestStatistics/RooUnbinnedL.h rename to roofit/roofitcore/inc/RooFit/TestStatistics/RooUnbinnedL.h index 32b43cc26dff2..64f0cd6e0d7fc 100644 --- a/roofit/roofitcore/inc/TestStatistics/RooUnbinnedL.h +++ b/roofit/roofitcore/inc/RooFit/TestStatistics/RooUnbinnedL.h @@ -13,7 +13,7 @@ #ifndef ROOT_ROOFIT_TESTSTATISTICS_RooUnbinnedL #define ROOT_ROOFIT_TESTSTATISTICS_RooUnbinnedL -#include +#include // forward declarations class RooAbsPdf; diff --git a/roofit/roofitcore/inc/TestStatistics/buildLikelihood.h b/roofit/roofitcore/inc/RooFit/TestStatistics/buildLikelihood.h similarity index 94% rename from roofit/roofitcore/inc/TestStatistics/buildLikelihood.h rename to roofit/roofitcore/inc/RooFit/TestStatistics/buildLikelihood.h index 2ba6c47b78fae..99adcbc519cc0 100644 --- a/roofit/roofitcore/inc/TestStatistics/buildLikelihood.h +++ b/roofit/roofitcore/inc/RooFit/TestStatistics/buildLikelihood.h @@ -13,8 +13,8 @@ #ifndef ROOT_ROOFIT_TESTSTATISTICS_likelihood_builders #define ROOT_ROOFIT_TESTSTATISTICS_likelihood_builders -#include "TestStatistics/RooAbsL.h" -#include "TestStatistics/optional_parameter_types.h" +#include +#include #include diff --git a/roofit/roofitcore/inc/TestStatistics/optional_parameter_types.h b/roofit/roofitcore/inc/RooFit/TestStatistics/optional_parameter_types.h similarity index 100% rename from roofit/roofitcore/inc/TestStatistics/optional_parameter_types.h rename to roofit/roofitcore/inc/RooFit/TestStatistics/optional_parameter_types.h diff --git a/roofit/roofitcore/inc/RooFit/UniqueId.h b/roofit/roofitcore/inc/RooFit/UniqueId.h new file mode 100644 index 0000000000000..8b7ab867a6b60 --- /dev/null +++ b/roofit/roofitcore/inc/RooFit/UniqueId.h @@ -0,0 +1,90 @@ +/* + * Project: RooFit + * Authors: + * Jonas Rembser, CERN, Jun 2021 + * + * Copyright (c) 2021, CERN + * + * 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 roofit_roofitcore_RooFit_UniqueId_h +#define roofit_roofitcore_RooFit_UniqueId_h + +#include + +namespace RooFit { + +/// A UniqueId can be added as a class member to enhance any class with a +/// unique identifier for each instantiated object. +/// +/// Example: +/// ~~~{.cpp} +/// class MyClass { +/// +/// public: +/// /// Return unique ID by reference. +/// /// Please always use the name `uniqueId` for the getter. +/// UniqueId const& uniqueId() const { return _uniqueId; } +/// +/// private: +/// const UniqueId _uniqueId; //! should be non-persistent +/// +/// }; +/// ~~~ + +template +struct UniqueId { +public: + using Value_t = unsigned long; + + /// Create a new UniqueId with the next value from the static counter. + UniqueId() : _val{++counter} {} + + // Disable all sorts of copying and moving to ensure uniqueness. + UniqueId(const UniqueId &) = delete; + UniqueId &operator=(const UniqueId &) = delete; + UniqueId(UniqueId &&) = delete; + UniqueId &operator=(UniqueId &&) = delete; + + operator Value_t() const { return _val; } + + /// Return numerical value of ID. + /// Use only if necessary, as the UniqueId type information is lost and + /// copying/moving is not prohibited for the value type. + /// Please don't turn this into a cast operator, as a function with an + /// explicit name is easier to track in the codebase. + constexpr Value_t value() const { return _val; } + + bool operator==(UniqueId const &other) const { return _val == other._val; } + bool operator<(UniqueId const &other) const { return _val < other._val; } + + static const UniqueId nullid; /// An ID that is less than the ID of any object (similar to nullptr). + static constexpr Value_t nullval = 0UL; /// The value of the nullid. + +private: + Value_t _val; /// Numerical value of the ID. + + static std::atomic counter; /// The static object counter to get the next ID value. +}; + +template +std::atomic::Value_t> UniqueId::counter{UniqueId::nullval}; + +template +const UniqueId UniqueId::nullid{UniqueId::nullval}; + +/// A helper function to replace pointer comparisons with UniqueId comparisons. +/// With pointer comparisons, we can also have `nullptr`. In the UniqueId case, +/// this translates to the `nullid`. +template +UniqueId getUniqueId(Class const *ptr) +{ + return ptr ? ptr->uniqueId() : UniqueId::nullid; +} + +} // namespace RooFit + +#endif diff --git a/roofit/roofitcore/inc/RooLinearCombination.h b/roofit/roofitcore/inc/RooLinearCombination.h index 1e483ffe9c8ae..4711f0e488f4b 100644 --- a/roofit/roofitcore/inc/RooLinearCombination.h +++ b/roofit/roofitcore/inc/RooLinearCombination.h @@ -17,7 +17,7 @@ #ifndef ROO_LINEAR_COMB #define ROO_LINEAR_COMB -#include "Floats.h" +#include "RooFit/Floats.h" #include #include @@ -29,7 +29,7 @@ class RooLinearCombination : public RooAbsReal { RooListProxy _actualVars; - std::vector _coefficients; + std::vector _coefficients; mutable RooArgSet *_nset; //! public: @@ -39,9 +39,9 @@ class RooLinearCombination : public RooAbsReal { virtual void printArgs(std::ostream &os) const override; ~RooLinearCombination(); virtual TObject *clone(const char *newname) const override; - void add(SuperFloat c, RooAbsReal *t); - void setCoefficient(size_t idx, SuperFloat c); - SuperFloat getCoefficient(size_t idx); + void add(RooFit::SuperFloat c, RooAbsReal *t); + void setCoefficient(size_t idx, RooFit::SuperFloat c); + RooFit::SuperFloat getCoefficient(size_t idx); virtual Double_t evaluate() const override; virtual std::list *binBoundaries(RooAbsRealLValue &obs, Double_t xlo, diff --git a/roofit/roofitcore/inc/RooMinimizer.h b/roofit/roofitcore/inc/RooMinimizer.h index 2cdd0a8467601..9e1db06c598e7 100644 --- a/roofit/roofitcore/inc/RooMinimizer.h +++ b/roofit/roofitcore/inc/RooMinimizer.h @@ -29,8 +29,8 @@ #include "RooArgList.h" // cannot just use forward decl due to default argument in lastMinuitFit -#include "TestStatistics/RooAbsL.h" -#include "TestStatistics/MinuitFcnGrad.h" +#include +#include #include "RooSentinel.h" #include "RooMsgService.h" diff --git a/roofit/roofitcore/inc/UniqueId.h b/roofit/roofitcore/inc/UniqueId.h deleted file mode 100644 index e3ed73ed4eeaa..0000000000000 --- a/roofit/roofitcore/inc/UniqueId.h +++ /dev/null @@ -1,75 +0,0 @@ -// Author: Jonas Rembser, CERN, Jun 2021 - -/// A UniqueId can be added as a class member to enhance any class with a -/// unique identifier for each instantiated object. -/// -/// Example: -/// ~~~{.cpp} -/// class MyClass { -/// -/// public: -/// /// Return unique ID by reference. -/// /// Please always use the name `uniqueId` for the getter. -/// UniqueId const& uniqueId() const { return _uniqueId; } -/// -/// private: -/// const UniqueId _uniqueId; //! should be non-persistent -/// -/// }; -/// ~~~ - -#ifndef roofit_roofitcore_UniqueId_h -#define roofit_roofitcore_UniqueId_h - -#include - -template -struct UniqueId { -public: - using Value_t = unsigned long; - - /// Create a new UniqueId with the next value from the static counter. - UniqueId() : _val{++counter} {} - - // Disable all sorts of copying and moving to ensure uniqueness. - UniqueId(const UniqueId &) = delete; - UniqueId &operator=(const UniqueId &) = delete; - UniqueId(UniqueId &&) = delete; - UniqueId &operator=(UniqueId &&) = delete; - - operator Value_t() const { return _val; } - - /// Return numerical value of ID. - /// Use only if necessary, as the UniqueId type information is lost and - /// copying/moving is not prohibited for the value type. - /// Please don't turn this into a cast operator, as a function with an - /// explicit name is easier to track in the codebase. - constexpr Value_t value() const { return _val; } - - bool operator==(UniqueId const &other) const { return _val == other._val; } - bool operator<(UniqueId const &other) const { return _val < other._val; } - - static const UniqueId nullid; /// An ID that is less than the ID of any object (similar to nullptr). - static constexpr Value_t nullval = 0UL; /// The value of the nullid. - -private: - Value_t _val; /// Numerical value of the ID. - - static std::atomic counter; /// The static object counter to get the next ID value. -}; - -template -std::atomic::Value_t> UniqueId::counter{UniqueId::nullval}; - -template -const UniqueId UniqueId::nullid{UniqueId::nullval}; - -/// A helper function to replace pointer comparisons with UniqueId comparisons. -/// With pointer comparisons, we can also have `nullptr`. In the UniqueId case, -/// this translates to the `nullid`. -template -UniqueId getUniqueId(Class const *ptr) { - return ptr ? ptr->uniqueId() : UniqueId::nullid; -} - -#endif diff --git a/roofit/roofitcore/res/TestStatistics/LikelihoodGradientJob.h b/roofit/roofitcore/res/TestStatistics/LikelihoodGradientJob.h index 1b7590a322f13..14f915eabf6ba 100644 --- a/roofit/roofitcore/res/TestStatistics/LikelihoodGradientJob.h +++ b/roofit/roofitcore/res/TestStatistics/LikelihoodGradientJob.h @@ -14,7 +14,7 @@ #define ROOT_ROOFIT_TESTSTATISTICS_LikelihoodGradientJob #include "RooFit/MultiProcess/Job.h" -#include "TestStatistics/LikelihoodGradientWrapper.h" +#include "RooFit/TestStatistics/LikelihoodGradientWrapper.h" #include "Math/MinimizerOptions.h" #include "Minuit2/NumericalDerivator.h" diff --git a/roofit/roofitcore/res/TestStatistics/LikelihoodJob.h b/roofit/roofitcore/res/TestStatistics/LikelihoodJob.h index 64848fe0268b0..c9ecb0cffdd5b 100644 --- a/roofit/roofitcore/res/TestStatistics/LikelihoodJob.h +++ b/roofit/roofitcore/res/TestStatistics/LikelihoodJob.h @@ -15,7 +15,7 @@ #include "RooFit/MultiProcess/Job.h" #include "RooFit/MultiProcess/types.h" -#include "TestStatistics/LikelihoodWrapper.h" +#include "RooFit/TestStatistics/LikelihoodWrapper.h" #include "RooArgList.h" #include "Math/MinimizerOptions.h" diff --git a/roofit/roofitcore/src/RooLinearCombination.cxx b/roofit/roofitcore/src/RooLinearCombination.cxx index 7ac081243d477..513beba3c6f5f 100644 --- a/roofit/roofitcore/src/RooLinearCombination.cxx +++ b/roofit/roofitcore/src/RooLinearCombination.cxx @@ -20,14 +20,13 @@ /// #include "RooLinearCombination.h" -#include "Floats.h" #include "Math/Util.h" ClassImp(RooLinearCombination); namespace { - template inline void assign(SuperFloat &var, const T &val) { + template inline void assign(RooFit::SuperFloat &var, const T &val) { #ifdef USE_UBLAS var.assign(val); #else @@ -88,18 +87,18 @@ TObject *RooLinearCombination::clone(const char *newname) const { return retval; } -void RooLinearCombination::add(SuperFloat c, RooAbsReal *t) { +void RooLinearCombination::add(RooFit::SuperFloat c, RooAbsReal *t) { // add a new term _actualVars.add(*t); _coefficients.push_back(c); } -void RooLinearCombination::setCoefficient(size_t idx, SuperFloat c) { +void RooLinearCombination::setCoefficient(size_t idx, RooFit::SuperFloat c) { // set the coefficient with the given index this->_coefficients[idx] = c; } -SuperFloat RooLinearCombination::getCoefficient(size_t idx) { +RooFit::SuperFloat RooLinearCombination::getCoefficient(size_t idx) { // get the coefficient with the given index return this->_coefficients[idx]; } @@ -107,11 +106,11 @@ SuperFloat RooLinearCombination::getCoefficient(size_t idx) { Double_t RooLinearCombination::evaluate() const { // call the evaluation #ifdef USE_UBLAS - SuperFloat result; + RooFit::SuperFloat result; result.assign(0.0); const std::size_t n(this->_actualVars.getSize()); for (std::size_t i = 0; i < n; ++i) { - SuperFloat tmp; + RooFit::SuperFloat tmp; tmp.assign(static_cast(this->_actualVars.at(i))->getVal()); result += this->_coefficients[i] * tmp; } diff --git a/roofit/roofitcore/src/TestStatistics/ConstantTermsOptimizer.cxx b/roofit/roofitcore/src/TestStatistics/ConstantTermsOptimizer.cxx index 12a0de35e90ef..bcbf9c45a867c 100644 --- a/roofit/roofitcore/src/TestStatistics/ConstantTermsOptimizer.cxx +++ b/roofit/roofitcore/src/TestStatistics/ConstantTermsOptimizer.cxx @@ -10,7 +10,7 @@ * listed in LICENSE (http://roofit.sourceforge.net/license.txt) */ -#include +#include #include #include // complete type for dynamic cast diff --git a/roofit/roofitcore/src/TestStatistics/LikelihoodGradientWrapper.cxx b/roofit/roofitcore/src/TestStatistics/LikelihoodGradientWrapper.cxx index 0ea8834801ee9..9602931b21c9e 100644 --- a/roofit/roofitcore/src/TestStatistics/LikelihoodGradientWrapper.cxx +++ b/roofit/roofitcore/src/TestStatistics/LikelihoodGradientWrapper.cxx @@ -10,7 +10,7 @@ * listed in LICENSE (http://roofit.sourceforge.net/license.txt) */ -#include "TestStatistics/LikelihoodGradientWrapper.h" +#include "RooFit/TestStatistics/LikelihoodGradientWrapper.h" #include "RooMinimizer.h" namespace RooFit { diff --git a/roofit/roofitcore/src/TestStatistics/LikelihoodJob.cxx b/roofit/roofitcore/src/TestStatistics/LikelihoodJob.cxx index fca634e701c0f..b668c0a24e922 100644 --- a/roofit/roofitcore/src/TestStatistics/LikelihoodJob.cxx +++ b/roofit/roofitcore/src/TestStatistics/LikelihoodJob.cxx @@ -17,11 +17,11 @@ #include "RooFit/MultiProcess/Queue.h" #include "RooFit/MultiProcess/Job.h" #include "RooFit/MultiProcess/types.h" -#include "TestStatistics/RooAbsL.h" -#include "TestStatistics/RooUnbinnedL.h" -#include "TestStatistics/RooBinnedL.h" -#include "TestStatistics/RooSubsidiaryL.h" -#include "TestStatistics/RooSumL.h" +#include "RooFit/TestStatistics/RooAbsL.h" +#include "RooFit/TestStatistics/RooUnbinnedL.h" +#include "RooFit/TestStatistics/RooBinnedL.h" +#include "RooFit/TestStatistics/RooSubsidiaryL.h" +#include "RooFit/TestStatistics/RooSumL.h" #include "RooRealVar.h" namespace RooFit { diff --git a/roofit/roofitcore/src/TestStatistics/LikelihoodSerial.cxx b/roofit/roofitcore/src/TestStatistics/LikelihoodSerial.cxx index 7c941219dc3c7..120224baa3ade 100644 --- a/roofit/roofitcore/src/TestStatistics/LikelihoodSerial.cxx +++ b/roofit/roofitcore/src/TestStatistics/LikelihoodSerial.cxx @@ -10,12 +10,12 @@ * listed in LICENSE (http://roofit.sourceforge.net/license.txt) */ -#include -#include -#include -#include -#include -#include +#include +#include +#include +#include +#include +#include #include "RooRealVar.h" namespace RooFit { diff --git a/roofit/roofitcore/src/TestStatistics/LikelihoodWrapper.cxx b/roofit/roofitcore/src/TestStatistics/LikelihoodWrapper.cxx index 4a933ec1f7490..be179b4af9b9b 100644 --- a/roofit/roofitcore/src/TestStatistics/LikelihoodWrapper.cxx +++ b/roofit/roofitcore/src/TestStatistics/LikelihoodWrapper.cxx @@ -10,12 +10,12 @@ * listed in LICENSE (http://roofit.sourceforge.net/license.txt) */ -#include +#include -#include // need complete type for likelihood->... -#include -#include -#include // need complete type for dynamic cast +#include // need complete type for likelihood->... +#include +#include +#include // need complete type for dynamic cast #include "RooMsgService.h" diff --git a/roofit/roofitcore/src/TestStatistics/MinuitFcnGrad.cxx b/roofit/roofitcore/src/TestStatistics/MinuitFcnGrad.cxx index b9dcb31285b05..aa3d7a1d1f07a 100644 --- a/roofit/roofitcore/src/TestStatistics/MinuitFcnGrad.cxx +++ b/roofit/roofitcore/src/TestStatistics/MinuitFcnGrad.cxx @@ -10,8 +10,8 @@ * listed in LICENSE (http://roofit.sourceforge.net/license.txt) */ -#include "TestStatistics/MinuitFcnGrad.h" -#include "TestStatistics/LikelihoodSerial.h" +#include "RooFit/TestStatistics/MinuitFcnGrad.h" +#include "RooFit/TestStatistics/LikelihoodSerial.h" #ifdef BUILD_WITH_ROOFIT_MULTIPROCESS #include "TestStatistics/LikelihoodJob.h" #include "TestStatistics/LikelihoodGradientJob.h" diff --git a/roofit/roofitcore/src/TestStatistics/RooAbsL.cxx b/roofit/roofitcore/src/TestStatistics/RooAbsL.cxx index 21e1dd6e67a90..12cbcddca799b 100644 --- a/roofit/roofitcore/src/TestStatistics/RooAbsL.cxx +++ b/roofit/roofitcore/src/TestStatistics/RooAbsL.cxx @@ -10,8 +10,8 @@ * listed in LICENSE (http://roofit.sourceforge.net/license.txt) */ -#include -#include +#include +#include #include "RooAbsPdf.h" #include "RooAbsData.h" diff --git a/roofit/roofitcore/src/TestStatistics/RooBinnedL.cxx b/roofit/roofitcore/src/TestStatistics/RooBinnedL.cxx index 52f7d752e6018..ffba050648310 100644 --- a/roofit/roofitcore/src/TestStatistics/RooBinnedL.cxx +++ b/roofit/roofitcore/src/TestStatistics/RooBinnedL.cxx @@ -24,7 +24,7 @@ In extended mode, a \f$ N_\mathrm{expect} - N_\mathrm{observed}*log(N_\mathrm{expect}) \f$ term is added. **/ -#include +#include #include "RooAbsData.h" #include "RooAbsPdf.h" diff --git a/roofit/roofitcore/src/TestStatistics/RooRealL.cxx b/roofit/roofitcore/src/TestStatistics/RooRealL.cxx index c9fa83792972a..353219016608f 100644 --- a/roofit/roofitcore/src/TestStatistics/RooRealL.cxx +++ b/roofit/roofitcore/src/TestStatistics/RooRealL.cxx @@ -10,8 +10,8 @@ * listed in LICENSE (http://roofit.sourceforge.net/license.txt) */ -#include -#include +#include +#include namespace RooFit { namespace TestStatistics { diff --git a/roofit/roofitcore/src/TestStatistics/RooSubsidiaryL.cxx b/roofit/roofitcore/src/TestStatistics/RooSubsidiaryL.cxx index 19343793a67da..582a07ff91083 100644 --- a/roofit/roofitcore/src/TestStatistics/RooSubsidiaryL.cxx +++ b/roofit/roofitcore/src/TestStatistics/RooSubsidiaryL.cxx @@ -31,7 +31,7 @@ change the derivative of the log likelihood (which is what matters in fitting th value of the (log-)likelihood itself. **/ -#include +#include #include // for dynamic cast #include diff --git a/roofit/roofitcore/src/TestStatistics/RooSumL.cxx b/roofit/roofitcore/src/TestStatistics/RooSumL.cxx index 5640c4c55360d..afbd92d1d9091 100644 --- a/roofit/roofitcore/src/TestStatistics/RooSumL.cxx +++ b/roofit/roofitcore/src/TestStatistics/RooSumL.cxx @@ -10,9 +10,9 @@ * listed in LICENSE (http://roofit.sourceforge.net/license.txt) */ -#include +#include #include -#include +#include #include // min, max diff --git a/roofit/roofitcore/src/TestStatistics/RooUnbinnedL.cxx b/roofit/roofitcore/src/TestStatistics/RooUnbinnedL.cxx index cf294a9ce5784..86ddd9b94c6e7 100644 --- a/roofit/roofitcore/src/TestStatistics/RooUnbinnedL.cxx +++ b/roofit/roofitcore/src/TestStatistics/RooUnbinnedL.cxx @@ -24,7 +24,7 @@ In extended mode, a \f$ N_\mathrm{expect} - N_\mathrm{observed}*log(N_\mathrm{expect}) \f$ term is added. **/ -#include +#include #include "RooAbsData.h" #include "RooAbsPdf.h" diff --git a/roofit/roofitcore/src/TestStatistics/buildLikelihood.cxx b/roofit/roofitcore/src/TestStatistics/buildLikelihood.cxx index c10aeba55e9d3..7fb61da1d983f 100644 --- a/roofit/roofitcore/src/TestStatistics/buildLikelihood.cxx +++ b/roofit/roofitcore/src/TestStatistics/buildLikelihood.cxx @@ -10,14 +10,14 @@ * listed in LICENSE (http://roofit.sourceforge.net/license.txt) */ -#include +#include #include -#include -#include +#include +#include #include // necessary to complete RooUnbinnedL -#include -#include +#include +#include #include #include #include diff --git a/roofit/roofitcore/src/TestStatistics/optional_parameter_types.cxx b/roofit/roofitcore/src/TestStatistics/optional_parameter_types.cxx index 402c04754e35e..7e3dc0a362012 100644 --- a/roofit/roofitcore/src/TestStatistics/optional_parameter_types.cxx +++ b/roofit/roofitcore/src/TestStatistics/optional_parameter_types.cxx @@ -10,7 +10,7 @@ * listed in LICENSE (http://roofit.sourceforge.net/license.txt) */ -#include +#include namespace RooFit { namespace TestStatistics { diff --git a/roofit/roofitcore/test/TestStatistics/RooRealL.cpp b/roofit/roofitcore/test/TestStatistics/RooRealL.cpp index 7ed63d9b99406..37ad0c2aa3c8f 100644 --- a/roofit/roofitcore/test/TestStatistics/RooRealL.cpp +++ b/roofit/roofitcore/test/TestStatistics/RooRealL.cpp @@ -12,8 +12,8 @@ * listed in LICENSE (http://roofit.sourceforge.net/license.txt) */ -#include "TestStatistics/RooRealL.h" -#include "TestStatistics/RooUnbinnedL.h" +#include +#include #include // necessary to complete RooUnbinnedL #include diff --git a/roofit/roofitcore/test/TestStatistics/testLikelihoodGradientJob.cpp b/roofit/roofitcore/test/TestStatistics/testLikelihoodGradientJob.cpp index 1001ddd9a6a22..630e957603659 100644 --- a/roofit/roofitcore/test/TestStatistics/testLikelihoodGradientJob.cpp +++ b/roofit/roofitcore/test/TestStatistics/testLikelihoodGradientJob.cpp @@ -21,9 +21,9 @@ #include "RooMinimizer.h" #include "RooGradMinimizerFcn.h" #include "RooFitResult.h" -#include "TestStatistics/LikelihoodSerial.h" -#include "TestStatistics/RooUnbinnedL.h" -#include "TestStatistics/buildLikelihood.h" +#include "RooFit/TestStatistics/LikelihoodSerial.h" +#include "RooFit/TestStatistics/RooUnbinnedL.h" +#include "RooFit/TestStatistics/buildLikelihood.h" #include "RooFit/MultiProcess/JobManager.h" #include "RooFit/MultiProcess/ProcessManager.h" // need to complete type for debugging #include "RooStats/ModelConfig.h" diff --git a/roofit/roofitcore/test/TestStatistics/testLikelihoodSerial.cxx b/roofit/roofitcore/test/TestStatistics/testLikelihoodSerial.cxx index 2bc062b0577a5..a84ffa55ed32f 100644 --- a/roofit/roofitcore/test/TestStatistics/testLikelihoodSerial.cxx +++ b/roofit/roofitcore/test/TestStatistics/testLikelihoodSerial.cxx @@ -10,7 +10,7 @@ * listed in LICENSE (http://roofit.sourceforge.net/license.txt) */ -#include +#include #include #include @@ -19,11 +19,11 @@ #include #include "RooDataHist.h" // complete type in Binned test #include "RooCategory.h" // complete type in MultiBinnedConstraint test -#include -#include -#include -#include -#include +#include +#include +#include +#include +#include #include "Math/Util.h" // KahanSum