14#include <TSSLSocket.h>
19#include <boost/algorithm/string.hpp>
21namespace ba = boost::algorithm;
28 if ( !gROOT ) {
static TROOT root(
"root",
"ROOT I/O" ); }
29 m_level = msg->outputLevel(
"RootFileHandler" );
60 std::unique_ptr<TFile> tf;
63 tf.reset( TFile::Open( n.c_str(), opt.c_str() ) );
64 }
catch (
const std::exception& Exception ) {
66 <<
" file for reading: " << Exception.what() << std::endl
67 <<
" -> file probably corrupt." <<
endmsg;
74 if ( !tf || !tf->IsOpen() ) {
75 m_log <<
MSG::ERROR <<
"Unable to open ROOT file \"" << n <<
"\" with options \"" << opt <<
"\"" <<
endmsg;
101 TFile* tf =
static_cast<TFile*
>( ptr );
105 }
catch (
const std::exception& Exception ) {
107 <<
" file" << Exception.what() <<
endmsg;
MsgStream & endmsg(MsgStream &s)
MsgStream Modifier: endmsg. Calls the output method of the MsgStream.
The IMessage is the interface implemented by the message service.
Io::reopen_t reopenRootFile(void *, const Io::IoFlags &)
Io::open_t openRootFile(const std::string &n, const Io::IoFlags &f, const std::string &desc, Io::Fd &fd, void *&ptr)
Io::close_t closeRootFile(void *ptr)
RootFileHandler(IMessageSvc *, const std::string &userProxy, const std::string &certDir)
GAUDI_API std::string getEnv(const char *var)
get a particular environment variable (returning "UNKNOWN" if not set)