|
ATLAS Offline Software
|
Go to the documentation of this file.
5 #ifndef OUTPUTSTREAMSEQUENCERSVC_H
6 #define OUTPUTSTREAMSEQUENCERSVC_H
13 #include "GaudiKernel/ServiceHandle.h"
14 #include "Gaudi/Property.h"
15 #include "GaudiKernel/IIncidentListener.h"
33 using IService::interfaceID;
51 virtual
void handle(
const Incident& ) override final;
65 std::string
setRangeID(
const std::string & rangeID);
97 "Name of the incident that signals the next Event Range start" };
100 "If True, keep info about Ranges for getRangeReport() calls"};
JetConstituentVector::iterator iterator
std::string incidentName() const
The name of the incident that starts a new event sequence.
static bool inConcurrentEventsMode()
Are there concurrent events? (threads>1)
std::string m_lastFileName
Recently constructed full file name (useful in single threaded processing)
const std::string & lastIncident()
Last incident type that was handled.
std::map< std::string, std::string > m_fnToRangeId
OutputStreamSequencerSvc(const std::string &name, ISvcLocator *pSvcLocator)
Standard Service Constructor.
bool inUse() const
Is the service in active use? (true after the first range incident is handled)
bool const RAWDATA *ch2 const
std::unique_ptr< RangeReport_t > RangeReport_ptr
std::pair< std::string, std::string > RangeReport_t
std::string setRangeID(const std::string &rangeID)
set the RangeID (possibly temporarily) so the right Range Filename may be generated
std::string m_lastIncident
Last incident type that was handled.
virtual StatusCode initialize() override final
Required of all Gaudi services:
::StatusCode StatusCode
StatusCode definition for legacy code.
BooleanProperty m_reportingOn
Flag to switch on storage of reporting info in fnToRangeId.
ServiceHandle< MetaDataSvc > m_metaDataSvc
std::vector< std::string > m_rangeIDinSlot
EventRange ID for all slots.
std::string currentRangeID() const
The current Event Range ID (only one range is returned)
std::string m_currentRangeID
Current EventRange ID constructed on the last NextRange incident.
This class provides configuration properties to enable OutputStream file sequences.
virtual void handle(const Incident &) override final
Incident service handle.
RangeReport_ptr getRangeReport()
int m_fileSequenceNumber
The event sequence number.
std::map< std::string, std::string >::iterator m_finishedRange
void publishRangeReport(const std::string &outputFile)
virtual StatusCode finalize() override final
Required of all Gaudi services:
virtual ~OutputStreamSequencerSvc()
Destructor.
std::string buildSequenceFileName(const std::string &)
Returns sequenced file name for output stream.
StringProperty m_incidentName
SequenceIncidentName, incident name for triggering file sequencing.