Main Page   Namespace List   Class Hierarchy   Compound List   File List   Compound Members   File Members  

BaseCnv.h

Go to the documentation of this file.
00001 //  ====================================================================
00002 //  BaseCnv.h
00003 //  --------------------------------------------------------------------
00004 //
00005 //  Package   : GlastSvc/src/EventSelector
00006 //
00007 //
00008 //  ====================================================================
00009 #ifndef _BASECNV_H
00010 #define _BASECNV_H 1
00011 
00012 // Include files
00013 #include <vector>
00014 #include <string>
00015 #include "GaudiKernel/Converter.h"
00016 #include "IEventCnvSvc.h"
00017 
00018 // HMA:  Took SicbBaseCnv and just renamed the class...
00019 
00020 // forward declarations
00021 class IEventCnvSvc;
00022 class IGlastDetSvc;
00023 
00024 // external declarations
00025 extern unsigned const char SICB_StorageType;
00026 
00032 class BaseCnv : public Converter      {
00033 protected:
00035   IEventCnvSvc*                     m_CnvSvc;
00037   std::vector<IEventCnvSvc::Leaf>   m_leaves;
00038   // access to the GlastDetSvc
00039   IGlastDetSvc*       m_detSvc;
00040 
00041 
00042 public:
00044   BaseCnv(const CLID& clid, ISvcLocator* svc);
00045 
00047   virtual ~BaseCnv();
00048 
00050   static const unsigned char storageType()      { 
00051     return SICB_StorageType; 
00052   }
00054   virtual StatusCode initialize();
00055 
00057   virtual StatusCode finalize();
00058 
00060   void declareObject(const std::string& fullPath, const CLID& clid, const std::string& bank, long par=0);
00061 
00063   virtual StatusCode createRep(DataObject* pObject, IOpaqueAddress*& refpAddress);
00064 
00066   virtual StatusCode fillRepRefs(IOpaqueAddress* pAddress,DataObject* pObject);
00067 
00069   virtual StatusCode updateRep(IOpaqueAddress* pAddress, DataObject* pObject);
00070 
00072   virtual StatusCode updateRepRefs(IOpaqueAddress* pAddress, DataObject* pObject);
00073 };
00074 
00075 
00076 #endif // _BASECNV_H

Generated at Wed Nov 21 12:21:12 2001 by doxygen1.2.3 written by Dimitri van Heesch, © 1997-2000