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

In This Package:

IDataStreamTool.h

Go to the documentation of this file.
00001 // $Id: IDataStreamTool.h,v 1.2 2007/01/12 17:32:31 hmd Exp $
00002 #ifndef GAUDIKERNEL_IDATASTREAMTOOL_H 
00003 #define GAUDIKERNEL_IDATASTREAMTOOL_H 1
00004 
00005 // Include files
00006 // from STL
00007 #include <string>
00008 
00009 // from Gaudi
00010 #include "GaudiKernel/IAlgTool.h"
00011 
00012 class IEvtSelector;
00013 class EventSelectorDataStream;
00014 
00015 static const InterfaceID IID_IDataStreamTool ( "IDataStreamTool", 1, 0 );
00016 
00025 class IDataStreamTool : virtual public IAlgTool {
00026 public: 
00027 
00028   typedef std::vector<std::string>                         StreamSpecs;
00029   typedef long                                             size_type;
00030 
00031   // Return the interface ID
00032   static const InterfaceID& interfaceID() { return IID_IDataStreamTool; }
00033   
00034   virtual StatusCode initializeStream( EventSelectorDataStream* ) = 0;
00035   
00036   virtual StatusCode finalizeStream( EventSelectorDataStream* ) = 0;
00037 
00038   virtual StatusCode getNextStream( const EventSelectorDataStream* &, size_type & ) = 0;
00039 
00040   virtual StatusCode getPreviousStream( const EventSelectorDataStream* &, size_type & ) = 0;
00041   
00042   virtual StatusCode addStream(const std::string &) = 0;
00043   
00044   virtual StatusCode addStreams(const StreamSpecs &) = 0;
00045   
00046   virtual StatusCode eraseStream( const std::string& ) = 0;
00047   
00048   virtual EventSelectorDataStream* getStream( size_type ) = 0;
00049   
00050   virtual EventSelectorDataStream* getStream( const std::string& ) = 0;
00051   
00052   virtual EventSelectorDataStream* lastStream() = 0;
00053   
00054   virtual size_type size() = 0;
00055   
00056   virtual StatusCode clear() = 0;
00057   
00058 protected:
00059   
00060   virtual StatusCode createSelector(const std::string& , const std::string& , 
00061                                     IEvtSelector*&) = 0;
00062   
00063   virtual StatusCode createStream(const std::string&, const std::string&, 
00064                                   EventSelectorDataStream*& ) = 0;
00065   
00066 };
00067 #endif // GAUDIKERNEL_IDATASTREAMTOOL_H
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

Generated on Mon Apr 11 19:56:57 2011 for GaudiKernel by doxygen 1.4.7