| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

In This Package:

StageDataManager.h

Go to the documentation of this file.
00001 
00013 #ifndef STAGEDATAMANAGER
00014 #define STAGEDATAMANAGER
00015 
00016 #include "Stage/IStageDataManager.h"
00017 #include "Stage/IStageData.h"
00018 #include "GaudiKernel/Service.h"
00019 
00020 #include <map>
00021 #include <string>
00022 
00023 class IDataProviderSvc;
00024 
00025 class StageDataManager : public Service,
00026                          virtual public IStageDataManager
00027 {
00028 public:
00029     StageDataManager(const std::string& name, ISvcLocator* svc);
00030     virtual ~StageDataManager();
00031     
00033     virtual StatusCode initialize();
00034     virtual StatusCode finalize();
00035     virtual StatusCode queryInterface(const InterfaceID& riid, void** ppint);
00036 
00038 
00041     StatusCode registerData(const std::string& location, IStageData& sd);
00042 
00044     StatusCode consumeData(IStageData& sd);
00045     
00046     
00047 private:
00048 
00049     void find_and_flush(const DayaBay::HeaderObject* ho);
00050     
00051     // map location to a time-ordered list
00052     typedef std::map<std::string, IStageDataList> LocDataListMap;
00053     LocDataListMap m_cache;
00054 
00055     IDataProviderSvc* m_evtsvc;
00056 };
00057 
00058 #endif  // STAGEDATAMANAGER
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

Generated on Mon Apr 11 20:36:09 2011 for Stage by doxygen 1.4.7