csvWriter Class Reference

Write coordSet(s) in csv format. More...

Inheritance diagram for csvWriter:
[legend]
Collaboration diagram for csvWriter:
[legend]

Public Member Functions

 TypeNameNoDebug ("csv")
 Runtime type information (no debug) More...
 
 csvWriter ()
 Default construct. More...
 
 csvWriter (const dictionary &options)
 Default construct with specified options. More...
 
 csvWriter (const coordSet &coords, const fileName &outputPath, const dictionary &options=dictionary())
 Construct from components. More...
 
 csvWriter (const UPtrList< coordSet > &tracks, const fileName &outputPath, const dictionary &options=dictionary())
 Construct from components. More...
 
virtual ~csvWriter ()
 Destructor. Calls close() More...
 
virtual bool buffering (const bool on)
 Enable/disable internal buffering. More...
 
virtual fileName path () const
 Characteristic output file name - information only. More...
 
 declareCoordSetWriterWriteMethod (label)
 
 declareCoordSetWriterWriteMethod (scalar)
 
 declareCoordSetWriterWriteMethod (vector)
 
 declareCoordSetWriterWriteMethod (sphericalTensor)
 
 declareCoordSetWriterWriteMethod (symmTensor)
 
 declareCoordSetWriterWriteMethod (tensor)
 
template<class Type >
Foam::fileName writeTemplate (const word &fieldName, const Field< Type > &values)
 
template<class Type >
Foam::fileName writeTemplate (const word &fieldName, const List< Field< Type > > &fieldValues)
 
template<class Type >
Foam::fileName writeTemplate (const word &fieldName, const UPtrList< const Field< Type > > &fieldPtrs)
 
- Public Member Functions inherited from coordSetWriter
 TypeName ("coordSetWriter")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, coordSetWriter, word,(),())
 
 declareRunTimeSelectionTable (autoPtr, coordSetWriter, wordDict,(const dictionary &writeOptions),(writeOptions))
 
 coordSetWriter ()
 Default construct. More...
 
 coordSetWriter (const dictionary &options)
 Default construct with specified options. More...
 
virtual ~coordSetWriter ()
 Destructor. Calls close() More...
 
virtual bool buffering () const
 True if the format uses internal buffering (eg, column output) More...
 
virtual bool buffering (const bool on)
 Turn internal buffering on/off (only if supported by the writer) More...
 
virtual bool enabled () const
 
virtual bool needsUpdate () const
 Does the writer need an update (eg, lagging behind other changes) More...
 
virtual bool wroteData () const
 Geometry or fields written since the last open? More...
 
virtual bool expire ()
 
virtual void clear ()
 
virtual void setCoordinates (const coordSet *coords)
 Set coordinates, can also be nullptr. More...
 
virtual void setCoordinates (const coordSet &coords)
 Set coordinates. More...
 
virtual void setTracks (const UPtrList< coordSet > &tracks)
 Set track coordinates. More...
 
virtual void setTrackTimes (const UList< scalarField > &times)
 Set track times. More...
 
label numPoints () const
 The number of associated points (local processor) More...
 
label numTracks () const
 The number of coordinate tracks. More...
 
bool hasCoords () const
 Writer is associated with content. More...
 
bool empty () const
 Writer is not associated with content. More...
 
bool is_open () const noexcept
 Test if outputPath has been set. More...
 
label nFields () const noexcept
 The number of expected output fields. More...
 
label nFields (const label n) noexcept
 Set the number of expected output fields. More...
 
bool useTracks () const noexcept
 Prefer tracks to points during single set writing. More...
 
bool useTracks (const bool on) noexcept
 Enable/disable tracks preference. More...
 
bool useTimeDir () const noexcept
 Should a time directory be spliced into the output path? More...
 
bool useTimeDir (const bool on) noexcept
 Enable/disable use of spliced output path. More...
 
bool verbose () const noexcept
 Get output verbosity. More...
 
bool verbose (bool on) noexcept
 Enable/disable verbose output. More...
 
bool hasTime () const
 True if there is a known time. More...
 
const wordtimeName () const
 The current time value/name. More...
 
scalar timeValue () const
 The current time value/name. More...
 
void setTime (const instant &inst)
 Set the current time. More...
 
void setTime (scalar timeValue)
 Set current time from timeValue, auto generating the name. More...
 
void setTime (scalar timeValue, const word &timeName)
 Set current time from timeValue and timeName. More...
 
void unsetTime ()
 Clear the current time. More...
 
virtual void beginTime (const Time &t)
 Begin a time-step. More...
 
virtual void beginTime (const instant &inst)
 Begin a time-step. More...
 
virtual void endTime ()
 End a time-step. More...
 
virtual fileName path () const =0
 
virtual void open (const fileName &outputPath)
 Write separate geometry to file. More...
 
virtual void open (const coordSet &coords, const fileName &outputPath)
 Open from components. More...
 
virtual void open (const UPtrList< coordSet > &tracks, const fileName &outputPath)
 Open from components. More...
 
virtual void close (bool force=false)
 Finish output, performing any necessary cleanup. More...
 
virtual InfoProxy< coordSetWriterinfo () const
 Return info proxy. More...
 
virtual fileName write (const word &fieldName, const Field< label > &field)=0
 Write field of label (point data) More...
 
virtual fileName write (const word &fieldName, const List< Field< label > > &fieldValues)=0
 Write track fields of label (point data) More...
 
virtual fileName write (const word &fieldName, const Field< scalar > &field)=0
 Write field of scalar (point data) More...
 
virtual fileName write (const word &fieldName, const List< Field< scalar > > &fieldValues)=0
 Write track fields of scalar (point data) More...
 
virtual fileName write (const word &fieldName, const Field< vector > &field)=0
 Write field of vector (point data) More...
 
virtual fileName write (const word &fieldName, const List< Field< vector > > &fieldValues)=0
 Write track fields of vector (point data) More...
 
virtual fileName write (const word &fieldName, const Field< sphericalTensor > &field)=0
 Write field of sphericalTensor (point data) More...
 
virtual fileName write (const word &fieldName, const List< Field< sphericalTensor > > &fieldValues)=0
 Write track fields of sphericalTensor (point data) More...
 
virtual fileName write (const word &fieldName, const Field< symmTensor > &field)=0
 Write field of symmTensor (point data) More...
 
virtual fileName write (const word &fieldName, const List< Field< symmTensor > > &fieldValues)=0
 Write track fields of symmTensor (point data) More...
 
virtual fileName write (const word &fieldName, const Field< tensor > &field)=0
 Write field of tensor (point data) More...
 
virtual fileName write (const word &fieldName, const List< Field< tensor > > &fieldValues)=0
 Write track fields of tensor (point data) More...
 
template<class Type >
Foam::UPtrList< const Foam::Field< Type > > repackageFields (const Field< Type > &field)
 
template<class Type >
Foam::UPtrList< const Foam::Field< Type > > repackageFields (const UList< Field< Type > > &fieldValues)
 

Protected Member Functions

virtual bool writeBuffered ()
 Write buffered data. More...
 
- Protected Member Functions inherited from coordSetWriter
void appendField (const word &fieldName, const Field< label > &vals)
 
void appendField (const word &fieldName, const Field< scalar > &vals)
 
void appendField (const word &fieldName, const Field< vector > &vals)
 
void appendField (const word &fieldName, const Field< sphericalTensor > &vals)
 
void appendField (const word &fieldName, const Field< symmTensor > &vals)
 
void appendField (const word &fieldName, const Field< tensor > &vals)
 
void clearBuffers ()
 Clear out buffering. More...
 
label nDataColumns () const
 The number of buffer data columns, after splitting into components. More...
 
virtual bool writeBuffered ()
 Write buffered data. More...
 
void writeBufferContents (Ostream &os, const coordSet &coords, const char *sep) const
 Write buffered data. More...
 
void getBufferLine (DynamicList< scalar > &buf, const coordSet &coords, const label pointi) const
 Get buffered data line (components) More...
 
fileName getExpectedPath (const word &fileExt=word::null) const
 Get expected (characteristic) output file name - information only. More...
 
fileName getFieldPrefixedPath (const word &fieldName, const word &fileExt=word::null) const
 Get field-prefixed output file name. More...
 
void checkOpen () const
 Verify that the outputPath_ has been set or FatalError. More...
 
virtual bool merge () const
 
template<class Type >
fileName writeTemplate (const word &fieldName, const Field< Type > &values)
 Dummy templated write operation. More...
 
template<class Type >
fileName writeTemplate (const word &fieldName, const List< Field< Type > > &fieldValues)
 Dummy templated write operation. Multiple tracks. More...
 
 coordSetWriter (const coordSetWriter &)=delete
 No copy construct. More...
 
void operator= (const coordSetWriter &)=delete
 No copy assignment. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from coordSetWriter
static bool supportedType (const word &writeType)
 True if New is likely to succeed for this writeType. More...
 
static autoPtr< coordSetWriterNew (const word &writeFormat)
 Return a reference to the selected writer. More...
 
static autoPtr< coordSetWriterNew (const word &writeFormat, const dictionary &writeOptions)
 Return a reference to the selected writer. More...
 
static word suffix (const word &fldName, const word &fileExt=word::null)
 Name suffix based on fieldName (underscore separator) More...
 
static word suffix (const wordList &fieldNames, const word &fileExt=word::null)
 Name suffix based on fieldNames (underscore separator) More...
 
- Static Protected Member Functions inherited from coordSetWriter
static void writeLine (Ostream &, const UList< word > &, const char *sep)
 Write line contents (eg, buffered) More...
 
static void writeLine (Ostream &, const UList< scalar > &, const char *sep)
 Write line contents (eg, buffered) More...
 
template<class Type >
static UPtrList< const Field< Type > > repackageFields (const Field< Type > &field)
 Repackage field into a UPtrList. More...
 
template<class Type >
static UPtrList< const Field< Type > > repackageFields (const UList< Field< Type > > &fieldValues)
 Repackage multiple fields into a UPtrList. More...
 
template<class Type >
static void writeTable (Ostream &os, const coordSet &coords, const UList< Type > &values, const char *sep)
 Write coordinates and values. More...
 
- Protected Attributes inherited from coordSetWriter
UPtrList< const coordSetcoords_
 Reference to coordinate set(s) More...
 
List< scalarFieldtrackTimes_
 Track times (eg, streamlines), one per coords_ entry. More...
 
bool upToDate_
 The content is up-to-date? More...
 
bool wroteGeom_
 Track if geometry has been written since the last open. More...
 
bool buffering_
 Writer with buffering output. More...
 
bool useTracks_
 Prefer tracks to points during single set writing. More...
 
bool useTimeDir_
 Insert additional time sub-directory in the output path. More...
 
bool verbose_
 Additional output verbosity. More...
 
label nFields_
 The number of fields. More...
 
instant currTime_
 The current time value/name. More...
 
fileName outputPath_
 The full output directory and file (coords) name. More...
 
DynamicList< wordlabelNames_
 
PtrDynList< Field< label > > labelFields_
 
DynamicList< wordscalarNames_
 
PtrDynList< Field< scalar > > scalarFields_
 
DynamicList< wordvectorNames_
 
PtrDynList< Field< vector > > vectorFields_
 
DynamicList< wordsphericalTensorNames_
 
PtrDynList< Field< sphericalTensor > > sphericalTensorFields_
 
DynamicList< wordsymmTensorNames_
 
PtrDynList< Field< symmTensor > > symmTensorFields_
 
DynamicList< wordtensorNames_
 
PtrDynList< Field< tensor > > tensorFields_
 

Detailed Description

Write coordSet(s) in csv format.

The formatOptions for csv:

Property Description Required Default
buffer Use buffered output no true
compression Use file compression no false
precision Write precision in ascii no same as IOstream

When called with a single coordSet, will buffer the output of all fields and output together in the order of label/scalar/vector/... each of which is sorted alphabetically according to the field name.

When called as a track writer (eg, with multiple coordSets), will emit one file per field.

Source files

Definition at line 88 of file csvCoordSetWriter.H.

Constructor & Destructor Documentation

◆ csvWriter() [1/4]

csvWriter ( )

Default construct.

Definition at line 57 of file csvCoordSetWriter.C.

References coordSetWriter::buffering_.

◆ csvWriter() [2/4]

csvWriter ( const dictionary options)
explicit

Default construct with specified options.

Definition at line 67 of file csvCoordSetWriter.C.

References coordSetWriter::buffering_, and dictionary::getOrDefault().

Here is the call graph for this function:

◆ csvWriter() [3/4]

csvWriter ( const coordSet coords,
const fileName outputPath,
const dictionary options = dictionary() 
)

Construct from components.

Definition at line 84 of file csvCoordSetWriter.C.

References coordSetWriter::open().

Here is the call graph for this function:

◆ csvWriter() [4/4]

csvWriter ( const UPtrList< coordSet > &  tracks,
const fileName outputPath,
const dictionary options = dictionary() 
)

Construct from components.

Definition at line 97 of file csvCoordSetWriter.C.

References coordSetWriter::open().

Here is the call graph for this function:

◆ ~csvWriter()

~csvWriter ( )
virtual

Destructor. Calls close()

Definition at line 112 of file csvCoordSetWriter.C.

Member Function Documentation

◆ writeBuffered()

bool writeBuffered ( )
protectedvirtual

Write buffered data.

Reimplemented from coordSetWriter.

Definition at line 139 of file csvCoordSetWriter.C.

References DynamicList< T, SizeMin >::append(), doLocalCode, Foam::isDir(), Foam::mkDir(), os(), fileName::path(), and path().

Here is the call graph for this function:

◆ TypeNameNoDebug()

TypeNameNoDebug ( "csv"  )

Runtime type information (no debug)

◆ buffering()

bool buffering ( const bool  on)
virtual

Enable/disable internal buffering.

Reimplemented from coordSetWriter.

Definition at line 120 of file csvCoordSetWriter.C.

◆ path()

Foam::fileName path ( ) const
virtual

Characteristic output file name - information only.

Warning
incorrect for unbuffered or track output!

Implements coordSetWriter.

Definition at line 128 of file csvCoordSetWriter.C.

◆ declareCoordSetWriterWriteMethod() [1/6]

declareCoordSetWriterWriteMethod ( label  )

◆ declareCoordSetWriterWriteMethod() [2/6]

declareCoordSetWriterWriteMethod ( scalar  )

◆ declareCoordSetWriterWriteMethod() [3/6]

declareCoordSetWriterWriteMethod ( vector  )

◆ declareCoordSetWriterWriteMethod() [4/6]

declareCoordSetWriterWriteMethod ( sphericalTensor  )

◆ declareCoordSetWriterWriteMethod() [5/6]

declareCoordSetWriterWriteMethod ( symmTensor  )

◆ declareCoordSetWriterWriteMethod() [6/6]

declareCoordSetWriterWriteMethod ( tensor  )

◆ writeTemplate() [1/3]

Foam::fileName writeTemplate ( const word fieldName,
const Field< Type > &  values 
)

Definition at line 217 of file csvCoordSetWriter.C.

References fileName::null, and path().

Here is the call graph for this function:

◆ writeTemplate() [2/3]

Foam::fileName writeTemplate ( const word fieldName,
const List< Field< Type > > &  fieldValues 
)

Definition at line 242 of file csvCoordSetWriter.C.

References fileName::null.

◆ writeTemplate() [3/3]

Foam::fileName writeTemplate ( const word fieldName,
const UPtrList< const Field< Type > > &  fieldPtrs 
)

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