The Gaudi Framework  master (b9786168)
Loading...
Searching...
No Matches
IExceptionSvc.h
Go to the documentation of this file.
1/***********************************************************************************\
2* (c) Copyright 1998-2025 CERN for the benefit of the LHCb and ATLAS collaborations *
3* *
4* This software is distributed under the terms of the Apache version 2 licence, *
5* copied verbatim in the file "LICENSE". *
6* *
7* In applying this licence, CERN does not waive the privileges and immunities *
8* granted to it by virtue of its status as an Intergovernmental Organization *
9* or submit itself to any jurisdiction. *
10\***********************************************************************************/
11#pragma once
12
15
16class INamedInterface;
17
25class GAUDI_API IExceptionSvc : virtual public IInterface {
26public:
30 virtual StatusCode handle( const INamedInterface& o, const GaudiException& e ) const = 0;
32 virtual StatusCode handle( const INamedInterface& o, const std::exception& e ) const = 0;
34 virtual StatusCode handle( const INamedInterface& o ) const = 0;
36 virtual StatusCode handleErr( const INamedInterface& o, const StatusCode& s ) const = 0;
37};
#define GAUDI_API
Definition Kernel.h:49
Define general base for Gaudi exception.
The abstract interface for exception handling service.
virtual StatusCode handle(const INamedInterface &o, const GaudiException &e) const =0
Handle caught GaudiExceptions.
virtual StatusCode handle(const INamedInterface &o) const =0
Handle caught (unknown)exceptions.
virtual StatusCode handle(const INamedInterface &o, const std::exception &e) const =0
Handle caught std::exceptions.
DeclareInterfaceID(IExceptionSvc, 3, 0)
InterfaceID.
virtual StatusCode handleErr(const INamedInterface &o, const StatusCode &s) const =0
Handle errors.
Definition of the basic interface.
Definition IInterface.h:225
IInterface compliant class extending IInterface with the name() method.
This class is used for returning status codes from appropriate routines.
Definition StatusCode.h:64