NIST Biometric Evaluation Framework
Software components for biometric technology evaluations
Classes | Public Member Functions | List of all members
BiometricEvaluation::MPI::Receiver Class Reference

A class to represent an MPI task that receives WorkPackages containers from the Distributor. More...

#include <be_mpi_receiver.h>

Public Member Functions

 Receiver (const std::string &propertiesFileName, const std::shared_ptr< BiometricEvaluation::MPI::WorkPackageProcessor > &workPackageProcessor)
 Construct a new work package receiver. More...
 
 ~Receiver ()
 
void start ()
 Start the receiving task. More...
 

Detailed Description

A class to represent an MPI task that receives WorkPackages containers from the Distributor.

A receiver object depends on a set of properties contained in a file. The properties specify MPI settings, and other items. Subclasses of the class can add new properties.

Each receiver object is responsible for 1..n worker processes that are started when Receiver::start() is called. The receiver will start workers only when the distributor indicates that it has started successfully. Otherwise, the Receiver transitions to the shutdown state.

One of the optional properties is a Uniform Resource Locator (URL) for the Logsheet. If this property does not exist, no logging takes place (although applications can create their own Logsheet). If the URL is present, the framework will log at various points of processing. In the case of a FileLogsheet the framework will create more than one log file, each named after the ID of the MPI task created by the MPI runtime, and the child process created by Receiver.

See also
IO::Properties
IO::Logsheet
MPI::Distributor
Process::Worker

Definition at line 55 of file be_mpi_receiver.h.

Constructor & Destructor Documentation

◆ Receiver()

BiometricEvaluation::MPI::Receiver::Receiver ( const std::string &  propertiesFileName,
const std::shared_ptr< BiometricEvaluation::MPI::WorkPackageProcessor > &  workPackageProcessor 
)

Construct a new work package receiver.

Parameters
[in]propertiesFileNameThe name of the file containing the properties used by the receiver object.
[in]workPackageProcessorThe object that will process the work received by this object.
Exceptions
Error::ExceptionAn error occurred when constructing this object.

◆ ~Receiver()

BiometricEvaluation::MPI::Receiver::~Receiver ( )

Member Function Documentation

◆ start()

void BiometricEvaluation::MPI::Receiver::start ( )

Start the receiving task.

Upon starting, the Receiver object will begin communicating with the Distributor using MPI messages. This Receiver object will send a status message back to the Distributor indicating success or failure to initialize. Success includes the startup of at least one worker process.


The documentation for this class was generated from the following file: