|
Gaudi Framework, version v22r0 |
| Home | Generated: 9 Feb 2011 |
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