Opm::ConvergenceReportQueue Class Reference

#include <ExtraConvergenceOutputThread.hpp>

Classes

struct  OutputRequest
 

Public Member Functions

void enqueue (std::vector< OutputRequest > &&requests)
 
void signalLastOutputRequest ()
 

Friends

class ConvergenceOutputThread
 

Detailed Description

Communication channel between thread creating output requests and consumer thread writing those requests to a file.

Output thread has access to internal state. Producer thread uses public interface. Producer thread creates an object of this type and launches the output thread with a reference to that queue object.

Member Function Documentation

◆ enqueue()

void Opm::ConvergenceReportQueue::enqueue ( std::vector< OutputRequest > &&  requests)

Push sequence of output requests, typically all substeps whether converged or not, of a single report step.

Parameters
[in]requestsOutput request sequence. Queue takes ownership.

◆ signalLastOutputRequest()

void Opm::ConvergenceReportQueue::signalLastOutputRequest ( )

Signal end of output request stream.

No additional requests should be added to queue following a call to this member function. Output thread detects this signal, completes any pending output requests, and shuts down afterwards.

Friends And Related Function Documentation

◆ ConvergenceOutputThread

friend class ConvergenceOutputThread
friend

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