OOFEM 3.0
Loading...
Searching...
No Matches
oofem::FileDataStream Class Reference

#include <datastream.h>

Inheritance diagram for oofem::FileDataStream:
Collaboration diagram for oofem::FileDataStream:

Classes

class  CantOpen

Public Member Functions

 FileDataStream (std ::string filename, bool write)
 Constructor, takes associated stream pointer as parameter.
virtual ~FileDataStream ()
 Destructor (will not close stream!).
int read (int *data, std::size_t count) override
 Reads count integer values into array pointed by data.
int read (unsigned long *data, std::size_t count) override
 Reads count unsigned long values into array pointed by data.
int read (long *data, std::size_t count) override
 Reads count long values into array pointed by data.
int read (double *data, std::size_t count) override
 Reads count double values into array pointed by data.
int read (char *data, std::size_t count) override
 Reads count char values into array pointed by data.
int read (bool &data) override
 Reads a bool value from data.
int write (const int *data, std::size_t count) override
 Writes count integer values from array pointed by data.
int write (const unsigned long *data, std::size_t count) override
 Writes count unsigned long values from array pointed by data.
int write (const long *data, std::size_t count) override
 Writes count long values from array pointed by data.
int write (const double *data, std::size_t count) override
 Writes count double values from array pointed by data.
int write (const char *data, std::size_t count) override
 Writes count char values from array pointed by data.
int write (bool data) override
 Writes a bool value.
int givePackSizeOfInt (std::size_t count) override
int givePackSizeOfDouble (std::size_t count) override
int givePackSizeOfChar (std::size_t count) override
int givePackSizeOfBool (std::size_t count) override
int givePackSizeOfLong (std::size_t count) override
int givePackSizeOfSizet (std::size_t count) override
Public Member Functions inherited from oofem::DataStream
virtual ~DataStream ()
 Destructor.
int read (int &data)
int read (unsigned long &data)
int read (long &data)
int read (double &data)
int read (char &data)
int read (std ::string &data)
 Reads a string (stored as an int for the length followed by char*).
int write (int data)
int write (unsigned long data)
int write (long data)
int write (double data)
int write (char data)
int write (const std ::string &data)
 Reads a string (stored as an int for the length followed by char*).
int write (const char *data)
 Writes a string (wrapper needed, otherwise write(bool) is called ).

Private Attributes

FILE * stream
 FILE pointer of associated stream.
std::string filename
 Filename.

Detailed Description

Implementation of FileDataStream representing DataStream interface to file i/o. This class creates a DataStream shell around c file i/o routines. This class will not provide any methods for opening/closing file. This is the responsibility of user.

See also
DataStream class.

Definition at line 147 of file datastream.h.

Constructor & Destructor Documentation

◆ FileDataStream()

oofem::FileDataStream::FileDataStream ( std ::string filename,
bool write )

Constructor, takes associated stream pointer as parameter.

Definition at line 65 of file datastream.C.

References filename, stream, and write().

◆ ~FileDataStream()

oofem::FileDataStream::~FileDataStream ( )
virtual

Destructor (will not close stream!).

Definition at line 76 of file datastream.C.

References stream.

Member Function Documentation

◆ givePackSizeOfBool()

int oofem::FileDataStream::givePackSizeOfBool ( std::size_t count)
overridevirtual

Implements oofem::DataStream.

Definition at line 172 of file datastream.C.

◆ givePackSizeOfChar()

int oofem::FileDataStream::givePackSizeOfChar ( std::size_t count)
overridevirtual

Implements oofem::DataStream.

Definition at line 167 of file datastream.C.

◆ givePackSizeOfDouble()

int oofem::FileDataStream::givePackSizeOfDouble ( std::size_t count)
overridevirtual

Implements oofem::DataStream.

Definition at line 162 of file datastream.C.

◆ givePackSizeOfInt()

int oofem::FileDataStream::givePackSizeOfInt ( std::size_t count)
overridevirtual

Implements oofem::DataStream.

Definition at line 157 of file datastream.C.

◆ givePackSizeOfLong()

int oofem::FileDataStream::givePackSizeOfLong ( std::size_t count)
overridevirtual

Implements oofem::DataStream.

Definition at line 177 of file datastream.C.

◆ givePackSizeOfSizet()

int oofem::FileDataStream::givePackSizeOfSizet ( std::size_t count)
overridevirtual

Implements oofem::DataStream.

Definition at line 182 of file datastream.C.

◆ read() [1/6]

int oofem::FileDataStream::read ( bool & data)
overridevirtual

Reads a bool value from data.

Implements oofem::DataStream.

Definition at line 115 of file datastream.C.

References stream.

◆ read() [2/6]

int oofem::FileDataStream::read ( char * data,
std::size_t count )
overridevirtual

Reads count char values into array pointed by data.

Implements oofem::DataStream.

Definition at line 110 of file datastream.C.

References stream.

◆ read() [3/6]

int oofem::FileDataStream::read ( double * data,
std::size_t count )
overridevirtual

Reads count double values into array pointed by data.

Implements oofem::DataStream.

Definition at line 105 of file datastream.C.

References stream.

◆ read() [4/6]

int oofem::FileDataStream::read ( int * data,
std::size_t count )
overridevirtual

Reads count integer values into array pointed by data.

Implements oofem::DataStream.

Definition at line 81 of file datastream.C.

References stream.

◆ read() [5/6]

int oofem::FileDataStream::read ( long * data,
std::size_t count )
overridevirtual

Reads count long values into array pointed by data.

Implements oofem::DataStream.

Definition at line 93 of file datastream.C.

References stream.

◆ read() [6/6]

int oofem::FileDataStream::read ( unsigned long * data,
std::size_t count )
overridevirtual

Reads count unsigned long values into array pointed by data.

Implements oofem::DataStream.

Definition at line 88 of file datastream.C.

◆ write() [1/6]

int oofem::FileDataStream::write ( bool data)
overridevirtual

Writes a bool value.

Implements oofem::DataStream.

Definition at line 152 of file datastream.C.

References stream.

◆ write() [2/6]

int oofem::FileDataStream::write ( const char * data,
std::size_t count )
overridevirtual

Writes count char values from array pointed by data.

Implements oofem::DataStream.

Definition at line 147 of file datastream.C.

References stream.

◆ write() [3/6]

int oofem::FileDataStream::write ( const double * data,
std::size_t count )
overridevirtual

Writes count double values from array pointed by data.

Implements oofem::DataStream.

Definition at line 142 of file datastream.C.

References stream.

◆ write() [4/6]

int oofem::FileDataStream::write ( const int * data,
std::size_t count )
overridevirtual

Writes count integer values from array pointed by data.

Implements oofem::DataStream.

Definition at line 120 of file datastream.C.

Referenced by FileDataStream().

◆ write() [5/6]

int oofem::FileDataStream::write ( const long * data,
std::size_t count )
overridevirtual

Writes count long values from array pointed by data.

Implements oofem::DataStream.

Definition at line 137 of file datastream.C.

References stream.

◆ write() [6/6]

int oofem::FileDataStream::write ( const unsigned long * data,
std::size_t count )
overridevirtual

Writes count unsigned long values from array pointed by data.

Implements oofem::DataStream.

Definition at line 125 of file datastream.C.

References stream.

Member Data Documentation

◆ filename

std::string oofem::FileDataStream::filename
private

Filename.

Definition at line 161 of file datastream.h.

Referenced by FileDataStream().

◆ stream

FILE* oofem::FileDataStream::stream
private

FILE pointer of associated stream.

Definition at line 159 of file datastream.h.

Referenced by FileDataStream(), read(), read(), read(), read(), read(), write(), write(), write(), write(), write(), and ~FileDataStream().


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

This page is part of the OOFEM-3.0 documentation. Copyright Copyright (C) 1994-2025 Borek Patzak Bořek Patzák
Project e-mail: oofem@fsv.cvut.cz
Generated at for OOFEM by doxygen 1.15.0 written by Dimitri van Heesch, © 1997-2011