| 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 bool isReadoutForced() const = 0;
00048 
00050     virtual IDataProviderSvc* dataSvc() = 0;
00052     virtual IDataManagerSvc* dataMgrSvc() = 0;
00053 
00054 };
00055 
00056 
00057 #endif  // IROOTIOSVC_H
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

Generated on Mon Apr 11 20:18:19 2011 for RootIOSvc by doxygen 1.4.7