5#ifndef ATHENAMPTOOLS_EVTRANGESCATTERER_H
6#define ATHENAMPTOOLS_EVTRANGESCATTERER_H
9#include "yampl/Exceptions.h"
22 ,
const std::string& name
23 ,
const IInterface* parent);
28 virtual StatusCode
finalize()
override;
38 virtual std::unique_ptr<AthenaInterprocess::ScheduledWork>
bootstrap_func()
override;
39 virtual std::unique_ptr<AthenaInterprocess::ScheduledWork>
exec_func()
override;
40 virtual std::unique_ptr<AthenaInterprocess::ScheduledWork>
fin_func()
override;
55 , yampl::ISocket* socket2Pilot
56 ,
int& procReportPending);
60 , yampl::ISocket* socket2Pilot
61 ,
int& procReportPending);
std::map< pid_t, std::string > Pid2RangeID
void trimRangeStrings(std::string &)
EvtRangeScatterer(const EvtRangeScatterer &)
virtual AthenaMP::AllWorkerOutputs_ptr generateOutputReport() override
virtual std::unique_ptr< AthenaInterprocess::ScheduledWork > bootstrap_func() override
pid_t pollFailedPidQueue(AthenaInterprocess::SharedQueue *sharedFailedPidQueue, yampl::ISocket *socket2Pilot, int &procReportPending)
virtual StatusCode exec ATLAS_NOT_THREAD_SAFE() override
virtual StatusCode initialize() override
Pid2RangeID m_pid2RangeID
virtual void subProcessLogs(std::vector< std::string > &) override
Gaudi::Property< std::string > m_eventRangeChannel
EvtRangeScatterer(const std::string &type, const std::string &name, const IInterface *parent)
std::string getNewRangeRequest(yampl::ISocket *socket2Processor, yampl::ISocket *socket2Pilot, int &procReportPending)
virtual std::unique_ptr< AthenaInterprocess::ScheduledWork > fin_func() override
virtual ~EvtRangeScatterer() override
EvtRangeScatterer & operator=(const EvtRangeScatterer &)
virtual StatusCode finalize() override
virtual int makePool ATLAS_NOT_THREAD_SAFE(int maxevt, int nprocs, const std::string &topdir) override
Gaudi::Property< bool > m_doCaching
Gaudi::Property< std::string > m_processorChannel
virtual std::unique_ptr< AthenaInterprocess::ScheduledWork > exec_func() override
std::unique_ptr< AllWorkerOutputs > AllWorkerOutputs_ptr