|
ATLAS Offline Software
|
Go to the documentation of this file.
3 #ifndef EVENT_BYTESTREAMCNVSVC_SRC_BYTESTREAMEVENTSTORAGEOUTPUTSVC_H_
4 #define EVENT_BYTESTREAMCNVSVC_SRC_BYTESTREAMEVENTSTORAGEOUTPUTSVC_H_
27 #include "EventStorage/EventStorageRecords.h"
31 #include "GaudiKernel/extends.h"
32 #include "GaudiKernel/IIoComponent.h"
33 #include "GaudiKernel/IIoComponentMgr.h"
34 #include "GaudiKernel/ServiceHandle.h"
48 public extends< AthService, IByteStreamOutputSvc, IIoComponent > {
53 const std::string&
name, ISvcLocator* pSvcLocator);
73 Gaudi::Property<std::string>
m_inputDir{
this,
"OutputDirectory",
"",
74 "directory for the data files"};
81 Gaudi::Property<std::string>
m_appName{
this,
"AppName",
"",
85 Gaudi::Property<std::string>
m_fileTag{
this,
"FileTag",
"",
98 "current",
"Version of the event format data, use \"v40\" or \"run1\" "
99 "for run1, \"current\" for most current version (default)."};
103 "EventStorageVersion",
"current",
"Version of the ByteStream file data, "
104 "use \"v5\" or \"run1\" for run1, \"current\" for most current version "
109 name(),
"stream name for multiple output"};
113 "for filename not from AgreedFileName"};
120 Gaudi::Property<int>
m_run{
this,
"RunNumber", 0,
"part of filename"};
123 Gaudi::Property<bool>
m_dump{
this,
"DumpFlag",
false,
"dump fragments"};
133 Gaudi::Property<unsigned int>
m_maxFileMB{
this,
"MaxFileMB", 10000,
137 Gaudi::Property<unsigned int>
m_maxFileNE{
this,
"MaxFileNE", 100000,
141 "EventInfo",
"Key for EventInfo object in event store"};
144 "ByteStreamMetadataKey",
"MetaDataStore+ByteStreamMetadata",
145 "Key for bytestream metadata object in metadata store"};
179 std::unique_ptr< uint32_t[] >
buffer{
nullptr};
200 #endif // EVENT_BYTESTREAMCNVSVC_SRC_BYTESTREAMEVENTSTORAGEOUTPUTSVC_H_
Property holding a SG store/key/clid from which a ReadHandle is made.
bool initDataWriter(const EventContext *ctx=nullptr)
initialize EventStorage's DataWriter
SG::ReadHandleKey< ByteStreamMetadataContainer > m_byteStreamMetadataKey
virtual ~ByteStreamEventStorageOutputSvc()
Destructor.
Gaudi::Property< bool > m_writeEventless
Compress events.
StatusCode io_reinit() override
SG::SlotSpecificObj< EventCache > m_eventCache
Cache of event data for each slot.
Gaudi::Property< std::string > m_streamType
stream name
OFFLINE_FRAGMENTS_NAMESPACE::FullEventFragment RawEvent
data type for reading raw event
int m_totalEventCounter
number of event counter
Gaudi::Property< int > m_lumiBlockNumber
run number
SG::ReadHandleKey< xAOD::EventInfo > m_eventInfoKey
Gaudi::Property< unsigned int > m_maxFileNE
Gaudi::Property< std::string > m_streamName
eformat event version to produce, "v40" for run1, or "current"
Gaudi::Property< std::string > m_inputDir
< directory for the data files
const ByteStreamMetadata * getByteStreamMetadata()
virtual bool putEvent(const RawEvent *re) override
Implementation of the IByteStreamOutputSvc interface method putEvent.
StatusCode reinit()
reinitialize the service when a fork() occurred/was-issued
This file contains the class definition for the ByteStreamDataWriter class.
Gaudi::Property< int > m_run
Dump fragments.
Maintain a set of objects, one per slot.
Gaudi::Property< std::string > m_eformatVersion
EventStorage BS version to produce, "v5" for run1, or "current".
std::unique_ptr< ByteStreamDataWriter > m_dataWriter
pointer to DataWriter
This file contains the interface for the ByteStreamOutputSvc classes.
Gaudi::Property< std::string > m_simpleFileName
use this string for filename, not from the "AgreedFileName"
void updateDataWriterParameters(DataWriterParameters &) const
Create DataWriter parameters from job properties.
Gaudi::Property< std::string > m_appName
File Tag.
::StatusCode StatusCode
StatusCode definition for legacy code.
Gaudi::Property< std::string > m_bsOutputStreamName
This class provides the services for writing FullEventFragment into file. This class implements the i...
Gaudi::Property< std::string > m_fileTag
stream type
std::mutex m_dataWriterMutex
mutex to lock data writer during initialization or writing
Class containing parameters needed to initiate DataWriter.
ServiceHandle< IIoComponentMgr > m_ioMgr
ByteStreamEventStorageOutputSvc(const std::string &name, ISvcLocator *pSvcLocator)
Constructors:
StatusCode finalize() override
Gaudi::Property< std::string > m_eventStorageVersion
stream name for multiple output
StatusCode initialize() override
Required of all Gaudi Services.
Gaudi::Property< bool > m_dump
Write eventless files.
This class provides general information about an event. Event information is provided by the accessor...
bool initDataWriterContents(const xAOD::EventInfo *, const ByteStreamMetadata *)
Gaudi::Property< bool > m_compressEvents
number of MB per file
Class describing the basic event information.
StatusCode stop() override
const boost::regex re(r_e)
Gaudi::Property< unsigned int > m_maxFileMB
number of events per file
Maintain a set of objects, one per slot.
Gaudi::Property< std::string > m_projectTag
Application Name.
std::unique_ptr< uint32_t[] > buffer
Underlying data structure.