Go to the documentation of this file.
   26   info() << 
"initialize" << 
endmsg;
 
   42   info() << 
"reinitialize" << 
endmsg;
 
   65     const auto len = lib.
length();
 
   66     if ( len >= 3 && lib.
compare( len - 3, 3, 
".so" ) == 0 ) {
 
   67       if ( ( len >= 7 && ( lib.
compare( len - 7, 4, 
"Dict" ) == 0 || lib.
compare( len - 7, 4, 
"Core" ) == 0 ) ) ||
 
   68            ( len >= 8 && lib.
compare( len - 8, 5, 
"Cling" ) == 0 ) ) {
 
   71     } 
else if ( lib.
rfind( 
"Dict.so" ) != std::string::npos || lib.
rfind( 
"Cling.so" ) != std::string::npos ||
 
   72                 lib.
rfind( 
"Core.so" ) != std::string::npos ) {
 
   77   if ( fnc == 
"_PyObject_GC_Malloc" ) 
return;
 
   79   if ( fnc == 
"PyThread_get_thread_ident" ) 
return;
 
   80   if ( fnc == 
"local" ) 
return;
 
   86     fatal() << 
"Unchecked StatusCode in " << fnc << 
" from lib " << lib << 
endmsg;
 
   94   if ( itr != 
m_dat.end() ) {
 
   95     ++( itr->second.count );
 
  116   for ( 
const auto& itr : dat_sorted ) {
 
  117     const auto& dat = itr.second;
 
  124     os.
setf( std::ios_base::right, std::ios_base::adjustfield );
 
  129     os.
setf( std::ios_base::left, std::ios_base::adjustfield );
 
  133     os.
setf( std::ios_base::left, std::ios_base::adjustfield );
 
  139     info() << 
"listing all unchecked return codes:" << 
endmsg;
 
  141            << 
"Num | Function                       | Source Library" << 
std::endl 
  142            << 
"----+--------------------------------+------------------------------------------" << 
std::endl 
  153   auto loc = str.
find( 
"=" );
 
  154   if ( loc == std::string::npos ) {
 
  163     if ( 
key == 
"FCN" || 
key == 
"FNC" ) {
 
  166     } 
else if ( 
key == 
"LIB" ) {
 
  173       warning() << 
"ignoring unknown token in Filter: " << str << 
endmsg;
 
  
 
StatusCode initialize() override
Gaudi::StateMachine::State m_state
Service state
Gaudi::Property< bool > m_abort
std::set< std::string > m_filterfnc
void regFnc(const std::string &func, const std::string &lib) override
MSG::Level msgLevel() const
get the cached level (originally extracted from the embedded MsgStream)
void parseFilter(const std::string &str, std::string &fnc, std::string &lib) const
std::set< std::string > m_filterlib
StatusCode finalize() override
void toupper(std::string &s)
const ValueType & value() const
Backward compatibility (.
Gaudi::Property< bool > m_dict
StatusCode reinitialize() override
bool failsFilter(const std::string &fnc, const std::string &lib) const
Gaudi::Property< std::vector< std::string > > m_pFilter
MsgStream & endmsg(MsgStream &s)
MsgStream Modifier: endmsg. Calls the output method of the MsgStream.
constexpr static const auto SUCCESS
#define DECLARE_COMPONENT(type)
void list() const override
StatusCode initialize() override
tbb::concurrent_unordered_map< std::string, StatCodeDat > m_dat