13 #include "boost/tokenizer.hpp" 17 #include <string_view> 27 DHHFixer( F f ) : m_f(
std::
move( f ) ) {}
34 r = m_f( h->objKey() );
35 if ( r != h->objKey() ) h->updateKey( r );
38 r = m_f( h->objKey() );
39 if ( r != h->objKey() ) h->updateKey( r );
45 auto make_unique_DHHFixer( F f ) {
46 return std::make_unique<DHHFixer<F>>(
std::move( f ) );
71 :
location.compare( 0, 7,
"/Event/" ) == 0
78 if ( !rootName.
empty() &&
'/' != rootName.
back() ) rootName +=
"/";
80 auto tokens = boost::tokenizer{
location, boost::char_separator{
":"}};
85 if ( r[0] !=
'/' ) r = rootName + r;
86 return s.empty() ? r :
s +
':' + r;
Definition of the MsgStream class used to transmit messages.
virtual std::vector< Gaudi::DataHandle * > inputHandles() const =0
virtual void visit(const IDataHandleHolder *)=0
std::string fullTESLocation(std::string_view location, std::string_view rit)
virtual std::vector< Gaudi::DataHandle * > outputHandles() const =0
std::unique_ptr< IDataHandleVisitor > fixDataHandlePath(std::string_view rit, std::string rootName, MsgStream *dbg)
MsgStream & endmsg(MsgStream &s)
MsgStream Modifier: endmsg. Calls the output method of the MsgStream.