Gaudi Framework, version v23r2

Home   Generated: Thu Jun 28 2012

StatusCodeSvc.h

Go to the documentation of this file.
00001 
00002 #ifndef GAUDISVC_STATUSCODESVC_H
00003 #define GAUDISVC_STATUSCODESVC_H
00004 
00005 #include "GaudiKernel/Service.h"
00006 #include "GaudiKernel/IStatusCodeSvc.h"
00007 
00008 #include <string>
00009 #include <map>
00010 #include <set>
00011 
00012 template <class TYPE> class SvcFactory;
00013 
00014 class StatusCodeSvc: public extends1<Service, IStatusCodeSvc> {
00015 
00016 public:
00017 
00018   virtual StatusCode initialize();
00019   virtual StatusCode reinitialize();
00020   virtual StatusCode finalize();
00021 
00022   virtual void regFnc(const std::string &func, const std::string &lib);
00023   virtual void list() const;
00024   virtual bool suppressCheck() const { return m_suppress.value() ; }
00025 
00026   StatusCodeSvc( const std::string& name, ISvcLocator* svc );
00027 
00028   // Destructor.
00029   virtual ~StatusCodeSvc();
00030 
00031 private:
00032 
00033   struct StatCodeDat {
00034     std::string fnc;
00035     std::string lib;
00036     int count;
00037   };
00038 
00039 
00040   void parseFilter(const std::string& str, std::string& fnc, std::string& lib);
00041   void filterFnc(const std::string&);
00042   void filterLib(const std::string&);
00043 
00044   // Allow SvcFactory to instantiate the service.
00045   friend class SvcFactory<StatusCodeSvc>;
00046 
00047   StringArrayProperty m_pFilter;
00048   BooleanProperty m_abort, m_suppress, m_dict;
00049 
00050   std::map<std::string,StatCodeDat> m_dat;
00051   std::set<std::string> m_filterfnc, m_filterlib;
00052 
00053 
00054 };
00055 
00056 #endif
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines

Generated at Thu Jun 28 2012 23:27:17 for Gaudi Framework, version v23r2 by Doxygen version 1.7.2 written by Dimitri van Heesch, © 1997-2004