opm-simulators
Loading...
Searching...
No Matches
Opm::BaseOutputWriter Class Referenceabstract

The base class for all output writers. More...

#include <baseoutputwriter.hh>

Inheritance diagram for Opm::BaseOutputWriter:
Opm::VtkMultiWriter< GridView, vtkOutputFormat > Opm::VtkMultiWriter< GridView, vtkFormat >

Public Types

using Scalar = double
using Tensor = Dune::DynamicMatrix<double>
using Vector = Dune::DynamicVector<double>
using ScalarBuffer = std::vector<Scalar>
using TensorBuffer = std::vector<Tensor>
using VectorBuffer = std::vector<Vector>

Public Member Functions

virtual void beginWrite (double t)=0
 Called when ever a new time step or a new grid must be written.
virtual void attachScalarVertexData (ScalarBuffer &buf, std::string_view name)=0
 Add a scalar vertex centered vector field to the output.
virtual void attachScalarElementData (ScalarBuffer &buf, std::string_view name)=0
 Add a scalar element centered quantity to the output.
virtual void attachVectorVertexData (VectorBuffer &buf, std::string_view name)=0
 Add a vectorial vertex centered vector field to the output.
virtual void attachVectorElementData (VectorBuffer &buf, std::string_view name)=0
 Add a vectorial element centered quantity to the output.
virtual void attachTensorVertexData (TensorBuffer &buf, std::string_view name)=0
 Add a tensorial vertex centered tensor field to the output.
virtual void attachTensorElementData (TensorBuffer &buf, std::string_view name)=0
 Add a tensorial element centered quantity to the output.
virtual void endWrite (bool onlyDiscard)=0
 Finalizes the current writer.

Detailed Description

The base class for all output writers.

The sole purpose of this class is to enable RTTI (i.e. dynamic_cast) on writer objects.

Member Function Documentation

◆ attachScalarElementData()

virtual void Opm::BaseOutputWriter::attachScalarElementData ( ScalarBuffer & buf,
std::string_view name )
pure virtual

Add a scalar element centered quantity to the output.

Implemented in Opm::VtkMultiWriter< GridView, vtkFormat >, and Opm::VtkMultiWriter< GridView, vtkOutputFormat >.

◆ attachScalarVertexData()

virtual void Opm::BaseOutputWriter::attachScalarVertexData ( ScalarBuffer & buf,
std::string_view name )
pure virtual

Add a scalar vertex centered vector field to the output.

Implemented in Opm::VtkMultiWriter< GridView, vtkFormat >, and Opm::VtkMultiWriter< GridView, vtkOutputFormat >.

◆ attachTensorElementData()

virtual void Opm::BaseOutputWriter::attachTensorElementData ( TensorBuffer & buf,
std::string_view name )
pure virtual

Add a tensorial element centered quantity to the output.

Implemented in Opm::VtkMultiWriter< GridView, vtkFormat >, and Opm::VtkMultiWriter< GridView, vtkOutputFormat >.

◆ attachTensorVertexData()

virtual void Opm::BaseOutputWriter::attachTensorVertexData ( TensorBuffer & buf,
std::string_view name )
pure virtual

Add a tensorial vertex centered tensor field to the output.

Implemented in Opm::VtkMultiWriter< GridView, vtkFormat >, and Opm::VtkMultiWriter< GridView, vtkOutputFormat >.

◆ attachVectorElementData()

virtual void Opm::BaseOutputWriter::attachVectorElementData ( VectorBuffer & buf,
std::string_view name )
pure virtual

Add a vectorial element centered quantity to the output.

Implemented in Opm::VtkMultiWriter< GridView, vtkFormat >, and Opm::VtkMultiWriter< GridView, vtkOutputFormat >.

◆ attachVectorVertexData()

virtual void Opm::BaseOutputWriter::attachVectorVertexData ( VectorBuffer & buf,
std::string_view name )
pure virtual

Add a vectorial vertex centered vector field to the output.

Implemented in Opm::VtkMultiWriter< GridView, vtkFormat >, and Opm::VtkMultiWriter< GridView, vtkOutputFormat >.

◆ beginWrite()

virtual void Opm::BaseOutputWriter::beginWrite ( double t)
pure virtual

Called when ever a new time step or a new grid must be written.

Implemented in Opm::VtkMultiWriter< GridView, vtkFormat >, and Opm::VtkMultiWriter< GridView, vtkOutputFormat >.

◆ endWrite()

virtual void Opm::BaseOutputWriter::endWrite ( bool onlyDiscard)
pure virtual

Finalizes the current writer.

This means that everything will be written to disk, except if the onlyDiscard argument is true. In this case only all managed buffers are deleted, but no output is written.

Implemented in Opm::VtkMultiWriter< GridView, vtkFormat >, and Opm::VtkMultiWriter< GridView, vtkOutputFormat >.


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