ATLAS Offline Software
ByteStreamOutputStreamCopyTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef BYTESTREAMOUTPUTSTREAMCOPYTOOL_H
6 #define BYTESTREAMOUTPUTSTREAMCOPYTOOL_H
7 
18 // Gaudi
20 #include "GaudiKernel/ServiceHandle.h"
22 
23 // ByteStream
26 
27 #include <string>
28 #include <vector>
29 
38 class ByteStreamOutputStreamCopyTool : public extends<AthAlgTool, IAthenaOutputStreamTool> {
39 
40 public:
42  ByteStreamOutputStreamCopyTool(const std::string& type, const std::string& name, const IInterface* parent);
43 
45  virtual StatusCode initialize() override;
46 
50  virtual StatusCode connectOutput(const std::string& outputName = "") override;
51 
54  virtual StatusCode commitOutput(bool doCommit = false) override;
55 
58  virtual StatusCode finalizeOutput() override;
59 
61  virtual StatusCode connectServices(const std::string& dataStore,
62  const std::string& cnvSvc,
63  bool extendProvenenceRecord = false) override;
64 
66  virtual StatusCode streamObjects(const TypeKeyPairs& typeKeys, const std::string& outputName = "") override;
67 
69  virtual StatusCode streamObjects(const DataObjectVec& dataObjects, const std::string& outputName = "") override;
70 
72  virtual StatusCode getInputItemList(SG::IFolder* m_p2BWrittenFromTool) override;
73 
74 private:
77 
80 };
81 
82 #endif
ByteStreamOutputStreamCopyTool::m_outputSvc
ServiceHandle< IByteStreamOutputSvc > m_outputSvc
Handle for BS output Svc.
Definition: ByteStreamOutputStreamCopyTool.h:76
ByteStreamOutputStreamCopyTool::ByteStreamOutputStreamCopyTool
ByteStreamOutputStreamCopyTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor.
Definition: ByteStreamOutputStreamCopyTool.cxx:17
SG::IFolder
a run-time configurable list of data objects
Definition: SGIFolder.h:24
ByteStreamOutputStreamCopyTool::connectOutput
virtual StatusCode connectOutput(const std::string &outputName="") override
Connect to the output stream Must connectOutput BEFORE streaming Only specify "outputName" if one wan...
Definition: ByteStreamOutputStreamCopyTool.cxx:51
ByteStreamOutputStreamCopyTool::initialize
virtual StatusCode initialize() override
Initialize.
Definition: ByteStreamOutputStreamCopyTool.cxx:32
IAthenaOutputStreamTool.h
Interface to an output stream tool.
ByteStreamOutputStreamCopyTool::m_inputSvc
ServiceHandle< IByteStreamInputSvc > m_inputSvc
Handle for BS input Svc.
Definition: ByteStreamOutputStreamCopyTool.h:79
ByteStreamOutputStreamCopyTool::finalizeOutput
virtual StatusCode finalizeOutput() override
Finalize the output stream after the last commit, e.g.
Definition: ByteStreamOutputStreamCopyTool.cxx:72
IByteStreamOutputSvc.h
This file contains the interface for the ByteStreamOutputSvc classes.
ByteStreamOutputStreamCopyTool::commitOutput
virtual StatusCode commitOutput(bool doCommit=false) override
Commit the output stream after having streamed out objects Must commitOutput AFTER streaming.
Definition: ByteStreamOutputStreamCopyTool.cxx:56
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
AthAlgTool.h
test_pyathena.parent
parent
Definition: test_pyathena.py:15
ByteStreamOutputStreamCopyTool::getInputItemList
virtual StatusCode getInputItemList(SG::IFolder *m_p2BWrittenFromTool) override
Get ItemList from the OutputStreamTool (e.g. all input objects)
Definition: ByteStreamOutputStreamCopyTool.cxx:92
ByteStreamOutputStreamCopyTool
This is a tool that implements the IAthenaOutputStreamTool for copying ByteStream from input.
Definition: ByteStreamOutputStreamCopyTool.h:38
ByteStreamOutputStreamCopyTool::connectServices
virtual StatusCode connectServices(const std::string &dataStore, const std::string &cnvSvc, bool extendProvenenceRecord=false) override
No need to connect Services.
Definition: ByteStreamOutputStreamCopyTool.cxx:44
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:228
IByteStreamInputSvc.h
This file contains the interface for the ByteStreamInputSvc classes.
ByteStreamOutputStreamCopyTool::streamObjects
virtual StatusCode streamObjects(const TypeKeyPairs &typeKeys, const std::string &outputName="") override
No object written for this tool.
Definition: ByteStreamOutputStreamCopyTool.cxx:76
lumiFormat.outputName
string outputName
Definition: lumiFormat.py:65
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
ServiceHandle< IByteStreamOutputSvc >