TrioCFD 1.9.9_beta
TrioCFD documentation
Loading...
Searching...
No Matches
InputCommBuffer Class Reference

: Helper class used exclusively by Schema_Comm. More...

#include <InputCommBuffer.h>

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

Public Member Functions

 InputCommBuffer ()
 ~InputCommBuffer () override
char * reserve_buffer (int bufsize)
void create_stream_from_output_stream (OutputCommBuffer &)
void create_stream ()
void clear ()
Public Member Functions inherited from Entree
 Entree ()
 Entree (istream &is)
 Entree (const Entree &is)
virtual ~Entree ()
void set_bin (bool bin) override
 Changes the file write mode.
Entreeoperator= (istream &is)
Entreeoperator= (Entree &is)
virtual istream & get_istream ()
virtual const istream & get_istream () const
void set_istream (istream *is)
Entreeoperator>> (Entree &(*f)(Entree &))
Entreeoperator>> (istream &(*f)(istream &))
Entreeoperator>> (ios &(*f)(ios &))
template<typename T>
Entreeoperator>> (const TRUST_Ref< T > &)
Entreeoperator>> (const TRUST_Ref_Objet_U &)
virtual Entreeoperator>> (int &ob)
virtual Entreeoperator>> (long &ob)
virtual Entreeoperator>> (long long &ob)
virtual Entreeoperator>> (float &ob)
virtual Entreeoperator>> (double &ob)
virtual Entreeoperator>> (std::string &ob)
virtual Entreeoperator>> (Objet_U &ob) final
virtual int get (int *ob, std::streamsize n)
virtual int get (long *ob, std::streamsize n)
virtual int get (long long *ob, std::streamsize n)
virtual int get (float *ob, std::streamsize n)
virtual int get (double *ob, std::streamsize n)
virtual int get (char *buf, std::streamsize bufsize)
 Reads a string from ostream_. bufsize is the size of the buffer allocated for ob (including.
virtual int eof ()
virtual int jumpOfLines ()
virtual int fail ()
virtual int good ()
virtual void set_check_types (bool flag)
 Indicates whether the stream should verify the types of read objects (ints and floating-point numbers).
bool check_types () const
virtual void set_error_action (Error_Action)
 Changes the error behaviour of the input; see error_handle_() and get_error_action().
Error_Action get_error_action ()
 Returns error_action_ for this input (allows modifying it and restoring the previous value afterwards).
 operator istream & ()
istream & putback (char ch)
bool get_diffuse ()
virtual void set_diffuse (bool diffuse)
 Sets the diffuse flag for this input stream.
Public Member Functions inherited from AbstractIO
bool is_64b () const
virtual void set_64b (bool is_64b)
bool is_bin ()
void set_avoid_conversion (bool avoid)
bool avoid_conversion ()

Additional Inherited Members

Public Types inherited from Entree
enum  Error_Action { ERROR_EXIT , ERROR_CONTINUE , ERROR_EXCEPTION }
Protected Member Functions inherited from Entree
int error_handle (int fail_flag)
virtual int error_handle_ (int fail_flag)
 This function is called by operator>>, get, get_nom, ouvrir, fermer, lire, etc.
Protected Member Functions inherited from AbstractIO
 AbstractIO ()
virtual ~AbstractIO ()
template<typename _TYPE_>
bool must_convert () const
 Whether to convert an int into a long when reading/writing out data.
Protected Attributes inherited from Entree
bool check_types_ = false
Error_Action error_action_
bool diffuse_
Protected Attributes inherited from AbstractIO
bool bin_ = false
 Is this a binary flux?
bool is_64b_
 Will we be reading/writing in 64b? (Init in ctor to avoid including arch.h probably).
bool avoid_conversion_ = false

Detailed Description

: Helper class used exclusively by Schema_Comm.

This is a class derived from Entree whose stream is of type istringstream (data read by operator>> are taken from a buffer). The class is used as follows: (1) reserve a buffer of a given size with char * buf = input_comm_buffer.reserve_buffer(size); (2) fill the buffer with data: for (i=0; i<size; i++) buf[i] = .....; (3) create a stream from the buffer: input_comm_buffer.create_stream(); (4) data can then be read through operator>>: input_comm_buffer >> x >> y >> string >> ... ; (5) when done reading with operator>>, call input_comm_buffer.clear(); and step (1) can be repeated.

Definition at line 42 of file InputCommBuffer.h.

Constructor & Destructor Documentation

◆ InputCommBuffer()

InputCommBuffer::InputCommBuffer ( )

Definition at line 20 of file InputCommBuffer.cpp.

◆ ~InputCommBuffer()

InputCommBuffer::~InputCommBuffer ( )
override

Definition at line 34 of file InputCommBuffer.cpp.

Member Function Documentation

◆ clear()

void InputCommBuffer::clear ( )

Definition at line 86 of file InputCommBuffer.cpp.

◆ create_stream()

void InputCommBuffer::create_stream ( )

Definition at line 56 of file InputCommBuffer.cpp.

◆ create_stream_from_output_stream()

void InputCommBuffer::create_stream_from_output_stream ( OutputCommBuffer & output_buf)

Definition at line 70 of file InputCommBuffer.cpp.

◆ reserve_buffer()

char * InputCommBuffer::reserve_buffer ( int bufsize)

Definition at line 43 of file InputCommBuffer.cpp.


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