Gaudi Framework, version v25r0
Home
Generated: Mon Feb 17 2014
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Groups
Pages
GaudiKernel
GaudiKernel
IDataStreamTool.h
Go to the documentation of this file.
1
// $Id: IDataStreamTool.h,v 1.2 2007/01/12 17:32:31 hmd Exp $
2
#ifndef GAUDIKERNEL_IDATASTREAMTOOL_H
3
#define GAUDIKERNEL_IDATASTREAMTOOL_H 1
4
5
// Include files
6
// from STL
7
#include <
string
>
8
9
// from Gaudi
10
#include "
GaudiKernel/IAlgTool.h
"
11
12
class
IEvtSelector
;
13
class
EventSelectorDataStream
;
14
23
class
GAUDI_API
IDataStreamTool
:
virtual
public
IAlgTool
{
24
public
:
26
DeclareInterfaceID
(
IDataStreamTool
,2,0);
27
28
typedef
std::vector<std::string>
StreamSpecs
;
29
typedef
long
size_type
;
30
31
virtual
StatusCode
initializeStream(
EventSelectorDataStream
* ) = 0;
32
33
virtual
StatusCode
finalizeStream(
EventSelectorDataStream
* ) = 0;
34
35
virtual
StatusCode
getNextStream(
const
EventSelectorDataStream
* &,
size_type
& ) = 0;
36
37
virtual
StatusCode
getPreviousStream(
const
EventSelectorDataStream
* &,
size_type
& ) = 0;
38
39
virtual
StatusCode
addStream(
const
std::string
&) = 0;
40
41
virtual
StatusCode
addStreams(
const
StreamSpecs
&) = 0;
42
43
virtual
StatusCode
eraseStream(
const
std::string
& ) = 0;
44
45
virtual
EventSelectorDataStream
* getStream(
size_type
) = 0;
46
47
virtual
EventSelectorDataStream
* getStream(
const
std::string
& ) = 0;
48
49
virtual
EventSelectorDataStream
* lastStream() = 0;
50
51
virtual
size_type
size() = 0;
52
53
virtual
StatusCode
clear() = 0;
54
55
protected
:
56
57
virtual
StatusCode
createSelector(
const
std::string
& ,
const
std::string
& ,
58
IEvtSelector
*&) = 0;
59
60
virtual
StatusCode
createStream(
const
std::string
&,
const
std::string
&,
61
EventSelectorDataStream
*& ) = 0;
62
63
};
64
#endif // GAUDIKERNEL_IDATASTREAMTOOL_H
Generated at Mon Feb 17 2014 14:37:42 for Gaudi Framework, version v25r0 by
Doxygen
version 1.8.2 written by
Dimitri van Heesch
, © 1997-2004