ATLAS Offline Software
Loading...
Searching...
No Matches
ByteStreamMergeOutputSvc.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef BYTESTREAMCNVSVC_BYTESTREAMMERGEOUTPUTSVC_H
6#define BYTESTREAMCNVSVC_BYTESTREAMMERGEOUTPUTSVC_H
7
12
16#include "GaudiKernel/ServiceHandle.h"
17
22class ByteStreamMergeOutputSvc : public extends<AthService, IByteStreamOutputSvc> {
23public:
25 ByteStreamMergeOutputSvc(const std::string& name, ISvcLocator* svcloc);
26
28 virtual ~ByteStreamMergeOutputSvc() = default;
29
30 virtual StatusCode initialize() override;
32 virtual bool putEvent(const RawEvent* re) override;
33 virtual bool putEvent(const RawEvent* re, const EventContext& ctx) override;
34
35private:
36 uint32_t reducedROBid(uint32_t);
37
38 ServiceHandle<IByteStreamInputSvc> m_inSvc{this, "ByteStreamInputSvc", {}};
39 ServiceHandle<IByteStreamOutputSvc> m_outSvc{this, "ByteStreamOutputSvc", {}};
40
41 Gaudi::Property<std::string> m_bsOutputStreamName{this, "BSOutputStreamName", {}, "stream name for multiple output"};
42 Gaudi::Property<bool> m_overwriteHeader{this, "overWriteHeader", false};
43};
44
45#endif // BYTESTREAMCNVSVC_BYTESTREAMMERGEOUTPUTSVC_H
const boost::regex re(r_e)
This file contains the interface for the ByteStreamInputSvc classes.
This file contains the interface for the ByteStreamOutputSvc classes.
OFFLINE_FRAGMENTS_NAMESPACE::FullEventFragment RawEvent
data type for reading raw event
Definition RawEvent.h:37
ByteStreamMergeOutputSvc(const std::string &name, ISvcLocator *svcloc)
Constructors:
virtual StatusCode initialize() override
Gaudi::Property< bool > m_overwriteHeader
virtual bool putEvent(const RawEvent *re) override
Implementation of the IByteStreamOutputSvc interface methods.
ServiceHandle< IByteStreamInputSvc > m_inSvc
ServiceHandle< IByteStreamOutputSvc > m_outSvc
virtual ~ByteStreamMergeOutputSvc()=default
Destructor.
Gaudi::Property< std::string > m_bsOutputStreamName