7#include "GaudiKernel/MsgStream.h"
13 static const char *
const ignore_error = getenv(
"ATHENA_TP_IGNORE_NOT_FOUND");
14 if( ignore_error )
return;
15 static const char *
const do_abort = getenv(
"ATHENA_TP_DIE_ON_NOT_FOUND");
16 if( do_abort ) abort();
17 throw std::runtime_error(
"TP converter not found" );
24 const std::string& typeName,
25 MsgStream& log )
const
27 log << MSG::ERROR <<
">>>>>> in parent TP converter " <<
typeid(*this).name()
28 <<
": could not find matching TP converter for type " << typeName <<
endmsg;
30 log << MSG::ERROR <<
" - found incompatible converter of type "
31 <<
typeid(*c).name() <<
endmsg;
33 log << MSG::ERROR <<
" Converter handle type was " << converterType.name() <<
endmsg;
42 const std::string& reqCnvTypeName,
43 MsgStream& log )
const
45 log << MSG::ERROR <<
">>>>>> in parent TP converter " <<
typeid(*this).name()
46 <<
" requested TP converter for TP type ID " <<
typeID <<
" not found " <<
endmsg;
48 log << MSG::ERROR <<
" - found converter " <<
typeid(*c).name()
49 <<
" for " << c->transientTInfo().name()
50 <<
" with an incompatible base type " << c->transBaseTInfo().name()
53 log << MSG::ERROR <<
" Converter handle type was " << reqCnvTypeName <<
endmsg;
static void errorHandler()
virtual void converterNotFound(const std::type_info &converterType, ITPConverter *c, const std::string &typeName, MsgStream &log) const
method called when the right TP converter was not found during writing
virtual const TPObjRef::typeID_t & typeID() const =0
Return TP typeID for persistent objects produced by this converter.