Loading [MathJax]/extensions/tex2jax.js
The Gaudi Framework  v31r0 (aeb156f0)
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
ErrorTool.h
Go to the documentation of this file.
1 #ifndef GAUDIALG_ERRORTOOL_H
2 #define GAUDIALG_ERRORTOOL_H 1
3 // ============================================================================
4 // Include files
5 // ============================================================================
6 // Gaudi
7 // ============================================================================
8 #include "GaudiAlg/GaudiTool.h"
9 #include "GaudiAlg/IErrorTool.h"
10 // ============================================================================
11 
12 // ============================================================================
19 // ============================================================================
20 
21 class ErrorTool : public GaudiTool, virtual public IErrorTool {
22 
23 public:
31  ErrorTool( const std::string& type, const std::string& name, const IInterface* parent );
32 
33 public:
56  const size_t mx = 10 ) const override {
57  return GaudiTool::Error( msg, st, mx );
58  }
59 
71  const size_t mx = 10 ) const override {
72  return GaudiTool::Warning( msg, st, mx );
73  }
74 
85  const MSG::Level lev = MSG::INFO ) const override {
86  return GaudiTool::Print( msg, st, lev );
87  }
88 
98  void Assert( const bool ok, const std::string& message = "",
99  const StatusCode sc = StatusCode::FAILURE ) const override {
100  GaudiTool::Assert( ok, message, sc );
101  }
102 
111  void Exception( const std::string& msg, const GaudiException& exc,
112  const StatusCode sc = StatusCode::FAILURE ) const override {
113  GaudiTool::Exception( msg, exc, sc );
114  }
115 
124  void Exception( const std::string& msg, const std::exception& exc,
125  const StatusCode sc = StatusCode::FAILURE ) const override {
126  GaudiTool::Exception( msg, exc, sc );
127  }
128 
136  void Exception( const std::string& msg = "no message", const StatusCode sc = StatusCode::FAILURE ) const override {
137  GaudiTool::Exception( msg, sc );
138  }
139 };
140 
141 #endif // GAUDIALG_ERRORTOOL_H
StatusCode Warning(const std::string &msg, const StatusCode st=StatusCode::FAILURE, const size_t mx=10) const
Print the warning message and return with the given StatusCode.
Definition: GaudiTool.h:690
Header file for class GaudiAlgorithm.
Define general base for Gaudi exception.
void Exception(const std::string &msg, const GaudiException &exc, const StatusCode sc=StatusCode::FAILURE) const override
Create and (re)-throw the exception.
Definition: ErrorTool.h:111
virtual const std::string & type() const =0
The type of an AlgTool, meaning the concrete AlgTool class.
void Assert(const bool ok, const std::string &message="", const StatusCode sc=StatusCode::FAILURE) const override
Assertion - throw exception, if condition is not fulfilled.
Definition: ErrorTool.h:98
constexpr static const auto SUCCESS
Definition: StatusCode.h:85
STL class.
StatusCode Print(const std::string &msg, const StatusCode st=StatusCode::SUCCESS, const MSG::Level lev=MSG::INFO) const override
Print the message and return status code.
Definition: ErrorTool.h:84
This class is used for returning status codes from appropriate routines.
Definition: StatusCode.h:50
Definition of the basic interface.
Definition: IInterface.h:244
WARN_UNUSED StatusCode Print(const std::string &msg, const StatusCode st=StatusCode::SUCCESS, const MSG::Level lev=MSG::INFO) const
Print the message and return with the given StatusCode.
StatusCode Warning(const std::string &msg, const StatusCode st=StatusCode::FAILURE, const size_t mx=10) const override
Print the warning message, return status code and perform the statistics of warning messages...
Definition: ErrorTool.h:70
STL class.
ErrorTool(const std::string &type, const std::string &name, const IInterface *parent)
Standard constructor.
Definition: ErrorTool.cpp:32
StatusCode Error(const std::string &msg, const StatusCode st=StatusCode::FAILURE, const size_t mx=10) const
Print the error message and return with the given StatusCode.
Definition: GaudiTool.h:663
StatusCode Error(const std::string &msg, const StatusCode st=StatusCode::FAILURE, const size_t mx=10) const override
Print the error message, return status code and perform the statistics of error messages.
Definition: ErrorTool.h:55
void Assert(const bool ok, const std::string &message="", const StatusCode sc=StatusCode(StatusCode::FAILURE, true)) const
Assertion - throw exception if the given condition is not fulfilled.
constexpr static const auto FAILURE
Definition: StatusCode.h:86
The useful base class for tools.
Definition: GaudiTool.h:101
void Exception(const std::string &msg="no message", const StatusCode sc=StatusCode::FAILURE) const override
Create and throw the exception.
Definition: ErrorTool.h:136
void Exception(const std::string &msg, const std::exception &exc, const StatusCode sc=StatusCode::FAILURE) const override
Create and (re)-throw the exception.
Definition: ErrorTool.h:124
virtual const IInterface * parent() const =0
The parent of the concrete AlgTool.
virtual const std::string & name() const =0
Retrieve the name of the instance.
void Exception(const std::string &msg, const GaudiException &exc, const StatusCode sc=StatusCode(StatusCode::FAILURE, true)) const
Create and (re)-throw a given GaudiException.