CMS 3D CMS Logo

TMVAZipReader.h
Go to the documentation of this file.
1 /*
2  * =====================================================================================
3  *
4  * Filename: TMVAZipReader.h
5  *
6  * Description: A stupid function that initializes a TMVA Reader
7  * using a gzipped or non-zipped xml file.
8  *
9  * The file will be unzipped if it ends in .gz or .gzip
10  * It will be passed as normal if it ends in .xml
11  *
12  * This file is header-only.
13  *
14  * Usage: loadTMVAWeights(&myReader, "BDT", "path_to_file.xml.gz");
15  *
16  *
17  * Author: Evan Friis, evan.friis@cern.ch
18  * Company: UW Madison
19  *
20  * =====================================================================================
21  */
22 
23 #ifndef CommonTools_MVAUtils_TMVAZipReader_h
24 #define CommonTools_MVAUtils_TMVAZipReader_h
25 
26 #include "TMVA/IMethod.h"
27 #include "TMVA/Reader.h"
28 #include <string>
29 
30 namespace reco::details {
31 
32  bool hasEnding(std::string const& fullString, std::string const& ending);
33  char* readGzipFile(const std::string& weightFile);
34 
35  TMVA::IMethod* loadTMVAWeights(TMVA::Reader* reader,
36  const std::string& method,
37  const std::string& weightFile,
38  bool verbose = false);
39 
40 } // namespace reco::details
41 
42 #endif
bool hasEnding(std::string const &fullString, std::string const &ending)
char * readGzipFile(const std::string &weightFile)
TMVA::IMethod * loadTMVAWeights(TMVA::Reader *reader, const std::string &method, const std::string &weightFile, bool verbose=false)