/search.css" rel="stylesheet" type="text/css"/> /search.js">
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

In This Package:

IRootIOSvc.h
Go to the documentation of this file.
00001 #ifndef IROOTIOSVC_H
00002 #define IROOTIOSVC_H
00003 
00004 #include "GaudiKernel/IInterface.h"
00005 
00006 #include <string>
00007 #include <map>
00008 
00009 class RootOutputStream;
00010 class RootInputStream;
00011 class DataObject;
00012 class RootInputAddress;
00013 class RootOutputAddress;
00014 class IDataProviderSvc;
00015 class IDataManagerSvc;
00016 
00017 static const InterfaceID IID_IRootIOSvc("IRootIOSvc",0,0);
00018 
00019 class IRootIOSvc : virtual public IInterface
00020 {
00021 public:
00022 
00023     static const InterfaceID& interfaceID() { return IID_IRootIOSvc; }
00024 
00027     virtual StatusCode createAddress(DataObject* obj, RootOutputAddress*& roa) = 0;
00028 
00030     virtual RootOutputStream* outputStream(const RootOutputAddress& roa) = 0;
00031     
00033     virtual RootInputStream* inputStream(const RootInputAddress& ria) = 0;
00034 
00036     typedef std::map<std::string,RootInputStream*> InputStreamMap;
00037     virtual InputStreamMap& inputStreams() = 0;
00038 
00040     virtual void associateOutput(const char* filename, const char* streamname) = 0;
00041     
00043     typedef std::map<std::string,std::string> FileMap;
00044     virtual FileMap fileMap() = 0;
00045 
00047     virtual IDataProviderSvc* dataSvc() = 0;
00049     virtual IDataManagerSvc* dataMgrSvc() = 0;
00050 
00051 };
00052 
00053 
00054 #endif  // IROOTIOSVC_H
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

Generated on Fri May 16 2014 09:58:18 for RootIOSvc by doxygen 1.7.4