Gaudi Framework, version v23r6

Home   Generated: Wed Jan 30 2013
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
OutputStream.h
Go to the documentation of this file.
1 // $Id: OutputStream.h,v 1.4 2010/05/20 17:07:50 marcocle Exp $
2 #ifndef GAUDISVC_PERSISTENCYSVC_OUTPUTSTREAM_H
3 #define GAUDISVC_PERSISTENCYSVC_OUTPUTSTREAM_H
4 
5 
6 // Required for inheritance
9 #include "GaudiKernel/Property.h"
10 
11 // STL include files
12 #include <memory>
13 #include <vector>
14 #include <string>
15 
16 // forward declarations
17 template <class ConcreteAlgorithm> class AlgFactory;
18 namespace { template <class P, class S> class Factory; }
19 
20 class IIncidentSvc;
21 class IRegistry;
22 class IConversionSvc;
23 class IDataManagerSvc;
24 class OutputStreamAgent;
25 class DataStoreItem;
26 
32 class OutputStream : public Algorithm {
33  friend class AlgFactory<OutputStream>;
35 
36 public:
39 protected:
79  int m_events;
92 
93 public:
95  OutputStream(const std::string& name, ISvcLocator* pSvcLocator);
97  virtual ~OutputStream();
98 protected:
102  void acceptAlgsHandler( Property& theProp );
106  void requireAlgsHandler( Property& theProp );
110  void vetoAlgsHandler( Property& theProp );
113  std::vector<Algorithm*>* theAlgs );
115  bool isEventAccepted( ) const;
119  virtual StatusCode writeObjects();
120 
123 
125  virtual bool hasInput() const;
126 
127 public:
129  virtual StatusCode initialize();
131  virtual StatusCode finalize();
133  virtual StatusCode execute();
134  // Connect to proper conversion service
137  virtual bool collect(IRegistry* dir, int level);
139  virtual StatusCode collectObjects();
141  void clearItems(Items& itms);
143  void addItem(Items& itms, const std::string& descriptor);
145  void clearSelection();
148  return &m_objects;
149  }
150 };
151 
152 #endif // GAUDISVC_PERSISTENCYSVC_OUTPUTSTREAM_H

Generated at Wed Jan 30 2013 17:13:38 for Gaudi Framework, version v23r6 by Doxygen version 1.8.2 written by Dimitri van Heesch, © 1997-2004