| # Gaudi Framework, version v21r7p1 |

Home |  | Generated: 15 Feb 2010

# GslSvc.h

Go to the documentation of this file.

    00001 // $Id: GslSvc.h,v 1.2 2006/11/30 10:40:53 mato Exp $
    00002 // ============================================================================
    00003 #ifndef GAUDIGSL_GSLSVC_H
    00004 #define GAUDIGSL_GSLSVC_H 1
    00005 // Include files
    00006 // STD & STL
    00007 #include <vector>
    00008 #include <string>
    00009 // GaudiKernel
    00010 #include "GaudiKernel/Service.h"
    00011 // Include files
    00012 // GaudiGSL
    00013 #include "GaudiGSL/IGslSvc.h"
    00014 #include "GaudiGSL/GslError.h"
    00015
    00016 // forward declarations
    00017 template <class TYPE> class SvcFactory ; // GaudiKernel
    00018 class IGslErrorHandler                 ; // from GaudiGSL
    00019
    00086 class GslSvc: public extends1<Service, IGslSvc> {
    00088   friend class SvcFactory<GslSvc>;
    00089
    00090 public:
    00091
    00097   virtual StatusCode handle ( const GslError& error ) const ;
    00098
    00103   virtual GslErrorHandler  handler ()    const ;
    00104
    00110   virtual GslErrorHandler  setHandler ( GslErrorHandler handler ) const ;
    00111
    00117   virtual StatusCode    status        ( const int error         ) const ;
    00118
    00125   virtual StatusCode    initialize () ;
    00126
    00133   virtual StatusCode    finalize   () ;
    00134
    00140   GslSvc ( const std::string& name ,
    00141            ISvcLocator*       svc  );
    00142
    00144   virtual ~GslSvc() ;
    00145
    00146 private:
    00147
    00149   GslSvc();
    00151   GslSvc            ( const GslSvc& );
    00153   GslSvc& operator= ( const GslSvc& );
    00154
    00155 private:
    00156
    00158   std::string    m_errorPolicy ;
    00159
    00161   typedef std::vector<std::string>       Names               ;
    00162   Names                                  m_handlersTypeNames ;
    00163   typedef std::vector<IGslErrorHandler*> Handlers            ;
    00164   Handlers                               m_handlers          ;
    00165
    00167   std::vector<int>                       m_ignore            ;
    00168
    00169 };
    00170
    00171 // ============================================================================
    00172 // The END
    00173 // ============================================================================
    00174 #endif // GAUDIGSL_GSLSVC_H
    00175 // ============================================================================