All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
IGslSvc.h
Go to the documentation of this file.
1 #ifndef GAUDIGSL_IGSLSVC_H
2 #define GAUDIGSL_IGSLSVC_H 1
3 // Include files
4 #include "GaudiKernel/IService.h"
5 // forward declaration
6 class GslError ;
16 class GAUDI_API IGslSvc : virtual public IService {
17 public:
20 
27  typedef void (*GslErrorHandler)
28  ( const char* /* reason */ ,
29  const char* /* file */ ,
30  int /* line */ ,
31  int /* code */ );
32 
38  virtual StatusCode handle
39  ( const GslError& error ) const = 0 ;
40 
44  virtual GslErrorHandler handler () const = 0 ;
45 
50  virtual GslErrorHandler setHandler ( GslErrorHandler handler ) const = 0 ;
51 
56  virtual StatusCode status ( const int error ) const = 0 ;
57 
58 protected:
59 
61  virtual ~IGslSvc(){}
62 
63 };
64 
65 // ============================================================================
66 // The END
67 // ============================================================================
68 #endif // GAUDIGSL_IGSLSVC_H
69 // ============================================================================
Helper class to represent GSL errors.
Definition: GslError.h:15
The abstract interface to "deal" with GNU Scientific Library (GLS) The main task is the error handlin...
Definition: IGslSvc.h:16
General service interface definition.
Definition: IService.h:18
This class is used for returning status codes from appropriate routines.
Definition: StatusCode.h:26
DeclareInterfaceID(IService, 4, 0)
InterfaceID.
virtual ~IGslSvc()
destructor (virtual and protected)
Definition: IGslSvc.h:61
#define GAUDI_API
Definition: Kernel.h:107