| # Gaudi Framework, version v20r3
Generated: 24 Nov 2008

# HConverter.h

Go to the documentation of this file.

    00001 // $Header: /local/reps/Gaudi/HbookCnv/src/HConverter.h,v 1.8 2005/10/03 15:42:55 hmd Exp $
    00002 #ifndef HBOOKCNV_HCONVERTER_H
    00003 #define HBOOKCNV_HCONVERTER_H 1
    00004
    00005 #include <map>
    00006
    00007 // Include files
    00008 #include "GaudiKernel/Converter.h"
    00009
    00010 // Forward declarations
    00011 class ISvcLocator;
    00012
    00013 //====================================================================
    00014 //  HConverter class definition
    00015 //--------------------------------------------------------------------
    00016 //
    00017 //  Package    : HbookCnv ( The LHCb Offline System)
    00018 //  Author     : M.Frank
    00019 //
    00020 //====================================================================
    00021
    00022
    00023 namespace HbookCnv {
    00024
    00047   class HConverter : public Converter   {
    00048
    00049   public:
    00051     virtual StatusCode book(IOpaqueAddress* /* pAddr */, DataObject* /* pObj*/)    {
    00052       return StatusCode::FAILURE;
    00053     }
    00055     virtual StatusCode createRep(DataObject* pObj, IOpaqueAddress*& refpAddress);
    00057     virtual StatusCode writeObject(const std::string& loc, long id);
    00059     StatusCode readObject(const std::string& loc, long id);
    00061     StatusCode createAddress(const std::string& rzdir, const CLID& clid, const std::string& title, IOpaqueAddress*& refpAddress);
    00063     StatusCode createAddress(const std::string& rzdir, const CLID& clid, long id, IOpaqueAddress*& refpAddress);
    00065     std::string diskDirectory(const std::string& loc);
    00067     std::string directory(const std::string& loc);
    00069     void setDirectory(const std::string& loc);
    00071     void setDiskDirectory(const std::string& loc);
    00073     StatusCode createDirectory(const std::string& loc);
    00075     StatusCode createDiskDirectory(const std::string& loc);
    00077     StatusCode createSubDirs(const std::string& top, const std::string& loc);
    00078
    00080     static long storageType();
    00081     long repSvcType() const {
    00082       return i_repSvcType();
    00083     }
    00084
    00085   protected:
    00087     HConverter( const CLID& clid, ISvcLocator* svc );
    00089     virtual ~HConverter();
    00091     std::string m_prefix;
    00093     bool        m_deleteAfterSave;
    00094
    00095   };
    00096
    00097 };    // namespace HbookCnv
    00098
    00099
    00100 #endif    // HBOOKCNV_HCONVERTER_H