Gaudi Framework, version v21r9

Home   Generated: 3 May 2010

PoolDbCacheSvc.h

Go to the documentation of this file.
00001 // $Id: PoolDbCacheSvc.h,v 1.10 2008/01/30 13:49:09 marcocle Exp $
00002 //====================================================================
00003 //      PoolCacheMgr.h
00004 //--------------------------------------------------------------------
00005 //
00006 //      Author     : M.Frank
00007 //====================================================================
00008 // $Header: /tmp/svngaudi/tmp.jEpFh25751/Gaudi/GaudiPoolDb/GaudiPoolDb/PoolDbCacheSvc.h,v 1.10 2008/01/30 13:49:09 marcocle Exp $
00009 #ifndef POOLDB_POOLDBCACHESVC_H
00010 #define POOLDB_POOLDBCACHESVC_H
00011 
00012 // Framework include files
00013 #include "StorageSvc/DbOptionCallback.h"
00014 #include "StorageSvc/DbSession.h"
00015 #include "GaudiPoolDb/IPoolCacheSvc.h"
00016 #include "GaudiKernel/Service.h"
00017 #include "GaudiKernel/System.h"
00018 
00019 // STL include files
00020 #include <vector>
00021 
00032 class GAUDI_API PoolDbCacheSvc : public extends1<Service, IPoolCacheSvc>,
00033                                  public pool::DbOptionCallback
00034 {
00035 
00036 protected:
00038   pool::DbSession          m_session;
00039 
00041   pool::DbOptionCallback*  m_callbackHandler;
00042 
00044   std::vector<std::string> m_dlls;
00045 
00047   std::vector<std::string> m_domainOpts;
00048 
00050   std::vector<std::string> m_databaseOpts;
00051 
00053   std::vector<std::string> m_databaseOpenOpts;
00054 
00056   std::vector<std::string> m_containerOpts;
00057 
00059   std::vector<std::string> m_containerOpenOpts;
00060 
00062   std::vector<System::ImageHandle>  m_sharedHdls;
00063 
00064 protected:
00065 
00067   StatusCode loadLibraries();
00068 
00069 public:
00071   PoolDbCacheSvc(const std::string& name, ISvcLocator* svc);
00072 
00074   virtual ~PoolDbCacheSvc();
00075 
00077   virtual StatusCode initialize();
00078 
00080   virtual StatusCode finalize();
00081 
00085   virtual pool::DbSession& session()    {
00086     return m_session;
00087   }
00088 
00090 
00094   virtual StatusCode loadDictionary(const std::string& name);
00095 
00099   virtual pool::DbOptionCallback* callbackHandler() const  {
00100     return m_callbackHandler;
00101   }
00102 
00104 
00110   virtual pool::DbStatus setMyOptions(pool::IDbOptionProxy* pObj,
00111                                       pool::DbOptionCallback::OptionType typ,
00112                                       const std::string& name);
00113 
00115 
00120   virtual pool::DbStatus setCallbackOptions(pool::IDbOptionProxy* pObj,
00121                                             const std::vector<std::string>& v,
00122                                             const std::string& name);
00123 };
00124 
00125 #endif  // POOLDB_POOLDBCACHESVC_H

Generated at Mon May 3 12:14:38 2010 for Gaudi Framework, version v21r9 by Doxygen version 1.5.6 written by Dimitri van Heesch, © 1997-2004