10#ifndef _BE_MPI_RECORDPROCESSOR_H
11#define _BE_MPI_RECORDPROCESSOR_H
55 const std::string &propertiesFileName);
97 const std::string &key,
101 virtual std::shared_ptr<WorkPackageProcessor>
103 std::shared_ptr<IO::Logsheet> &logsheet) = 0;
106 std::shared_ptr<IO::Logsheet> &logsheet) = 0;
112 std::shared_ptr<MPI::RecordStoreResources>
115 std::shared_ptr<MPI::RecordStoreResources>
An implementation of a work package processor that will extract record store keys,...
virtual void processRecord(const std::string &key)=0
Method implemented by child classes to perform an action using each record from the Record Store.
virtual ~RecordProcessor()
virtual void processRecord(const std::string &key, const Memory::uint8Array &value)=0
Method implemented by child classes to perform an action using each record from the Record Store.
void processWorkPackage(MPI::WorkPackage &workPackage)
Process the data contents of the work package.
RecordProcessor(const std::string &propertiesFileName)
Construct a work package processor with the given properties.
virtual void performInitialization(std::shared_ptr< IO::Logsheet > &logsheet)=0
Initialization function to be called before work is distributed to the work package processor.
std::shared_ptr< MPI::RecordStoreResources > getResources()
virtual std::shared_ptr< WorkPackageProcessor > newProcessor(std::shared_ptr< IO::Logsheet > &logsheet)=0
Obtain an object that will process work packages.
A class to represent a piece of work to be acted upon by a processor.
Represents an object that processes the contents of a work package.
This software was developed at the National Institute of Standards and Technology (NIST) by employees...