00001 #ifndef AthenaHitsCollectionHelper_H 00002 #define AthenaHitsCollectionHelper_H 00003 00004 #include <string> 00005 // Generic interface to a hit collection. it should be used to 00006 // remove any dependency between sensitive detectors and the 00007 // underlying storing system.. 00008 #include "GaudiKernel/ISvcLocator.h" 00009 #include "GaudiKernel/Bootstrap.h" 00010 #include "GaudiKernel/MsgStream.h" 00011 #include "GaudiKernel/IMessageSvc.h" 00012 00013 // #include "StoreGate/StoreGateSvc.h" 00014 00015 class AthenaHitsCollectionHelper { 00016 public: 00017 AthenaHitsCollectionHelper(); 00018 virtual ~AthenaHitsCollectionHelper(); 00019 // following can't be virtual 00020 /* 00021 template <typename collectionType> 00022 void ExportCollection(collectionType* collection) 00023 { 00024 StatusCode status = m_storeGate->record(collection,collection->Name(),false); 00025 if (status.isFailure()) 00026 { 00027 std::cout 00028 << "Failed to record and lock HitCollection in StoreGate!" 00029 << std::endl; 00030 } 00031 else 00032 { 00033 } 00034 } 00035 */ 00036 /* 00037 template <typename collectionType> 00038 const DataHandle< collectionType > RetrieveCollection(std::string name="") 00039 { 00040 const DataHandle< collectionType > collMDT; 00041 if (name.empty()) 00042 StatusCode status = m_storeGate->retrieve( collMDT ); 00043 else 00044 StatusCode status = m_storeGate->retrieve( collMDT , name); 00045 return collMDT; 00046 } 00047 */ 00048 private: 00049 // StoreGateSvc* m_storeGate; 00050 }; 00051 00052 #endif 00053