ensightSurfaceReader Class Reference

Ensight format surface reader. More...

Inheritance diagram for ensightSurfaceReader:
Collaboration diagram for ensightSurfaceReader:

Public Member Functions

 TypeName ("ensight")
 Runtime type information. More...
 
 ensightSurfaceReader (const fileName &fName, const dictionary &options=dictionary())
 Construct from fileName, with reader options. More...
 
virtual ~ensightSurfaceReader ()=default
 Destructor. More...
 
virtual const meshedSurfacegeometry (const label timeIndex)
 Return a reference to the surface geometry. More...
 
virtual instantList times () const
 Return a list of the available times. More...
 
virtual wordList fieldNames (const label timeIndex) const
 Return a list of the available fields at a given time. More...
 
virtual tmp< Field< scalar > > field (const label timeIndex, const label fieldIndex, const scalar &refValue=pTraits< scalar >::zero) const
 Return a scalar field at a given time. More...
 
virtual tmp< Field< vector > > field (const label timeIndex, const label fieldIndex, const vector &refValue=pTraits< vector >::zero) const
 Return a vector field at a given time. More...
 
virtual tmp< Field< sphericalTensor > > field (const label timeIndex, const label fieldIndex, const sphericalTensor &refValue=pTraits< sphericalTensor >::zero) const
 Return a sphericalTensor field at a given time. More...
 
virtual tmp< Field< symmTensor > > field (const label timeIndex, const label fieldIndex, const symmTensor &refValue=pTraits< symmTensor >::zero) const
 Return a symmTensor field at a given time. More...
 
virtual tmp< Field< tensor > > field (const label timeIndex, const label fieldIndex, const tensor &refValue=pTraits< tensor >::zero) const
 Return a tensor field at a given time. More...
 
template<class Type >
Foam::tmp< Foam::Field< Type > > readField (const fileName &dataFile, const word &fieldName) const
 
template<class Type >
Foam::tmp< Foam::Field< Type > > readField (const label timeIndex, const label fieldIndex) const
 
- Public Member Functions inherited from surfaceReader
 TypeName ("surfaceReader")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, surfaceReader, fileName,(const fileName &fName, const dictionary &options),(fName, options))
 
 surfaceReader (const fileName &fName)
 Construct from fileName. More...
 
 surfaceReader (const fileName &fName, const dictionary &options)
 Construct from fileName and specified options. More...
 
virtual ~surfaceReader ()=default
 Destructor. More...
 

Protected Types

enum  idTypes : unsigned char { NONE = 0, IGNORE = 1, GIVEN = 2 }
 Handling of node/element id types (off, assign, ignore, given) More...
 
typedef Tuple2< ensightFaces::elemType, label > faceInfoTuple
 Tuple of face type (tria3, quad4, nsided) and count. More...
 

Protected Member Functions

void skip (const label n, Istream &is) const
 Helper function to skip forward n steps in stream. More...
 
void readLine (ISstream &is, string &buffer) const
 Helper function to read an ascii line from file. More...
 
void debugSection (const word &expected, ISstream &is) const
 Read and check a section header. More...
 
Pair< idTypesreadGeometryHeader (ensightReadFile &is) const
 Read (and discard) geometry file header. More...
 
void readCase (ISstream &is)
 Read the case file. More...
 
meshedSurface readGeometry (const fileName &geometryFile)
 Read and return surface geometry. Updates faceTypeInfo_. More...
 
template<class Type >
void readFromLine (const label nSkip, Istream &is, Type &value) const
 Helper function to return Type after skipping n tokens. More...
 
template<class Type >
void readFromLine (const label nSkip, const string &buffer, Type &value) const
 Helper function to return Type after skipping n tokens. More...
 
template<class Type >
tmp< Field< Type > > readField (const fileName &dataFile, const word &fieldName) const
 Helper function to return a field. More...
 
template<class Type >
tmp< Field< Type > > readField (const label timeIndex, const label fieldIndex) const
 Helper function to return a field. More...
 

Static Protected Member Functions

static fileName replaceMask (const fileName &fName, const label timeIndex)
 Replace the '*' mask chars with a 0 padded string. More...
 

Protected Attributes

bool masterOnly_
 Read on master and broadcast (in parallel) More...
 
IOstreamOption::streamFormat readFormat_
 Format flag. More...
 
fileName baseDir_
 Base directory. More...
 
fileName meshFileName_
 Name of mesh file, including any subdirectory. More...
 
List< wordfieldNames_
 Field names. More...
 
List< stringfieldFileNames_
 Field file names. More...
 
label nTimeSteps_
 Number of time steps. More...
 
label timeStartIndex_
 Start time index. More...
 
label timeIncrement_
 Time increment. More...
 
instantList timeValues_
 Times. More...
 
autoPtr< meshedSurfacesurfPtr_
 Pointer to the surface. More...
 
List< faceInfoTuplefaceTypeInfo_
 List of face-type/count tuples. More...
 
- Protected Attributes inherited from surfaceReader
fileName fileName_
 File name. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from surfaceReader
static dictionary formatOptions (const dictionary &dict, const word &formatName, const word &entryName="formatOptions")
 Same as fileFormats::getFormatOptions. More...
 
static autoPtr< surfaceReaderNew (const word &readType, const fileName &fName, const dictionary &options=dictionary())
 Return a reference to the selected surfaceReader. More...
 

Detailed Description

Ensight format surface reader.

readOptions
{
    ensight
    {
        debug       false;
        masterOnly  false;
    }
}

Format options for ensight:

Property Description Required Default
debug Add debug flag no false
masterOnly Read files on master and broadcast values no true
Source files

Definition at line 84 of file ensightSurfaceReader.H.

Member Typedef Documentation

◆ faceInfoTuple

typedef Tuple2<ensightFaces::elemType, label> faceInfoTuple
protected

Tuple of face type (tria3, quad4, nsided) and count.

Definition at line 106 of file ensightSurfaceReader.H.

Member Enumeration Documentation

◆ idTypes

enum idTypes : unsigned char
protected

Handling of node/element id types (off, assign, ignore, given)

Enumerator
NONE 

"off", "assign"

IGNORE 

Read but "ignore".

GIVEN 

Use "given" values (not supported)

Definition at line 95 of file ensightSurfaceReader.H.

Constructor & Destructor Documentation

◆ ensightSurfaceReader()

ensightSurfaceReader ( const fileName fName,
const dictionary options = dictionary() 
)
explicit

Construct from fileName, with reader options.

Definition at line 334 of file ensightSurfaceReader.C.

References Pstream::broadcasts(), Foam::ensightOutput::debug, dictionary::getOrDefault(), UPstream::master(), UPstream::parRun(), and UPstream::worldComm.

Here is the call graph for this function:

◆ ~ensightSurfaceReader()

virtual ~ensightSurfaceReader ( )
virtualdefault

Destructor.

Member Function Documentation

◆ skip()

void skip ( const label  n,
Istream is 
) const
protected

Helper function to skip forward n steps in stream.

Definition at line 58 of file ensightSurfaceReader.C.

References DebugInfo, IOstream::good(), n, Foam::nl, and WarningInFunction.

Here is the call graph for this function:

◆ readLine()

void readLine ( ISstream is,
string buffer 
) const
protected

Helper function to read an ascii line from file.

Definition at line 81 of file ensightSurfaceReader.C.

References ISstream::getLine(), IOstream::good(), Foam::stringOps::inplaceTrimRight(), and Foam::pos().

Here is the call graph for this function:

◆ debugSection()

void debugSection ( const word expected,
ISstream is 
) const
protected

Read and check a section header.

Definition at line 100 of file ensightSurfaceReader.C.

References DebugInfo, Foam::exit(), Foam::FatalIOError, FatalIOErrorInFunction, and Foam::nl.

Here is the call graph for this function:

◆ replaceMask()

Foam::fileName replaceMask ( const fileName fName,
const label  timeIndex 
)
staticprotected

Replace the '*' mask chars with a 0 padded string.

Definition at line 122 of file ensightSurfaceReader.C.

References Foam::stringOps::count(), ensightCase::padded(), string::replace(), and timeIndex.

Here is the call graph for this function:

◆ readGeometryHeader()

Foam::Pair< Foam::ensightSurfaceReader::idTypes > readGeometryHeader ( ensightReadFile is) const
protected

Read (and discard) geometry file header.

Returns
information about node/element id handling

Definition at line 146 of file ensightSurfaceReader.C.

References string::contains(), DebugInfo, Pair< T >::first(), string::length(), Foam::nl, ensightReadFile::read(), ensightReadFile::readBinaryHeader(), and Pair< T >::second().

Here is the call graph for this function:

◆ readCase()

◆ readGeometry()

◆ readFromLine() [1/2]

void readFromLine ( const label  nSkip,
Istream is,
Type &  value 
) const
protected

Helper function to return Type after skipping n tokens.

Definition at line 28 of file ensightSurfaceReaderTemplates.C.

◆ readFromLine() [2/2]

void readFromLine ( const label  nSkip,
const string buffer,
Type &  value 
) const
protected

Helper function to return Type after skipping n tokens.

Definition at line 42 of file ensightSurfaceReaderTemplates.C.

References string::length().

Here is the call graph for this function:

◆ readField() [1/4]

tmp<Field<Type> > readField ( const fileName dataFile,
const word fieldName 
) const
protected

Helper function to return a field.

◆ readField() [2/4]

tmp<Field<Type> > readField ( const label  timeIndex,
const label  fieldIndex 
) const
protected

Helper function to return a field.

◆ TypeName()

TypeName ( "ensight"  )

Runtime type information.

◆ geometry()

const Foam::meshedSurface & geometry ( const label  timeIndex)
virtual

Return a reference to the surface geometry.

Implements surfaceReader.

Definition at line 622 of file ensightSurfaceReader.C.

References Pstream::broadcast(), DebugInFunction, Foam::endl(), UPstream::master(), UPstream::parRun(), timeIndex, and UPstream::worldComm.

Here is the call graph for this function:

◆ times()

Foam::instantList times ( ) const
virtual

Return a list of the available times.

Implements surfaceReader.

Definition at line 651 of file ensightSurfaceReader.C.

◆ fieldNames()

Foam::wordList fieldNames ( const label  timeIndex) const
virtual

Return a list of the available fields at a given time.

Implements surfaceReader.

Definition at line 658 of file ensightSurfaceReader.C.

◆ field() [1/5]

Foam::tmp< Foam::Field< Foam::scalar > > field ( const label  timeIndex,
const label  fieldIndex,
const scalar &  refValue = pTraits<scalar>::zero 
) const
virtual

Return a scalar field at a given time.

Implements surfaceReader.

Definition at line 667 of file ensightSurfaceReader.C.

References timeIndex.

◆ field() [2/5]

Foam::tmp< Foam::Field< Foam::vector > > field ( const label  timeIndex,
const label  fieldIndex,
const vector refValue = pTraits<vector>::zero 
) const
virtual

Return a vector field at a given time.

Implements surfaceReader.

Definition at line 678 of file ensightSurfaceReader.C.

References timeIndex.

◆ field() [3/5]

Foam::tmp< Foam::Field< Foam::sphericalTensor > > field ( const label  timeIndex,
const label  fieldIndex,
const sphericalTensor refValue = pTraits<sphericalTensor>::zero 
) const
virtual

Return a sphericalTensor field at a given time.

Implements surfaceReader.

Definition at line 690 of file ensightSurfaceReader.C.

References timeIndex.

◆ field() [4/5]

Foam::tmp< Foam::Field< Foam::symmTensor > > field ( const label  timeIndex,
const label  fieldIndex,
const symmTensor refValue = pTraits<symmTensor>::zero 
) const
virtual

Return a symmTensor field at a given time.

Implements surfaceReader.

Definition at line 701 of file ensightSurfaceReader.C.

References timeIndex.

◆ field() [5/5]

Foam::tmp< Foam::Field< Foam::tensor > > field ( const label  timeIndex,
const label  fieldIndex,
const tensor refValue = pTraits<tensor>::zero 
) const
virtual

Return a tensor field at a given time.

Implements surfaceReader.

Definition at line 712 of file ensightSurfaceReader.C.

References timeIndex.

◆ readField() [3/4]

◆ readField() [4/4]

Foam::tmp<Foam::Field<Type> > readField ( const label  timeIndex,
const label  fieldIndex 
) const

Member Data Documentation

◆ masterOnly_

bool masterOnly_
protected

Read on master and broadcast (in parallel)

Definition at line 114 of file ensightSurfaceReader.H.

◆ readFormat_

IOstreamOption::streamFormat readFormat_
protected

Format flag.

Definition at line 119 of file ensightSurfaceReader.H.

◆ baseDir_

fileName baseDir_
protected

Base directory.

Definition at line 124 of file ensightSurfaceReader.H.

◆ meshFileName_

fileName meshFileName_
protected

Name of mesh file, including any subdirectory.

Definition at line 129 of file ensightSurfaceReader.H.

◆ fieldNames_

List<word> fieldNames_
protected

Field names.

Definition at line 134 of file ensightSurfaceReader.H.

◆ fieldFileNames_

List<string> fieldFileNames_
protected

Field file names.

Definition at line 139 of file ensightSurfaceReader.H.

◆ nTimeSteps_

label nTimeSteps_
protected

Number of time steps.

Definition at line 144 of file ensightSurfaceReader.H.

◆ timeStartIndex_

label timeStartIndex_
protected

Start time index.

Definition at line 149 of file ensightSurfaceReader.H.

◆ timeIncrement_

label timeIncrement_
protected

Time increment.

Definition at line 154 of file ensightSurfaceReader.H.

◆ timeValues_

instantList timeValues_
protected

Times.

Definition at line 159 of file ensightSurfaceReader.H.

◆ surfPtr_

autoPtr<meshedSurface> surfPtr_
protected

Pointer to the surface.

Definition at line 164 of file ensightSurfaceReader.H.

◆ faceTypeInfo_

List<faceInfoTuple> faceTypeInfo_
protected

List of face-type/count tuples.

Definition at line 169 of file ensightSurfaceReader.H.


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