The IT++ file format reading and writing class. More...
#include <itpp/base/itfile.h>
Public Types | |
typedef it_file &(* | it_manip )(it_file &) |
ACTION: Add documentation for this typedef. | |
Public Member Functions | |
it_file () | |
Default constructor. | |
it_file (const std::string &filename, bool trunc=false) | |
Constructor that calls open() | |
virtual | ~it_file () |
Destructor. | |
void | open (const std::string &filename, bool trunc=false) |
Open a file for reading and writing. | |
void | close () |
Close the file. | |
void | flush () |
Flush the data to disk. | |
bfstream & | low_level () |
Returns pointer to the underlying bfstream used. | |
void | set_low_precision (bool p=true) |
Set the precision. Low precision means floats, high means doubles. | |
bool | get_low_precision () const |
Get the precision. | |
void | set_next_name (const std::string &name, const std::string &description="") |
Set the name and optionally description of the next variable to be saved. | |
void | write_file_header () |
Write the header for the it_file . | |
void | write_data_header (const std::string &type, uint64_t size) |
Write the data header for a variable, specifying the type and size of the data to follow. | |
void | write_data_header (const std::string &type, const std::string &name, uint64_t size, const std::string &description="") |
Write the data header for a variable, specifying the type, name, size and optionally description of the data to follow. | |
void | low_level_write (char x) |
Write a char value at the current file pointer position. | |
void | low_level_write (uint64_t x) |
Write an unsigned integer 64-bit value at the current file pointer position. | |
void | low_level_write (bool x) |
Write a bool value at the current file pointer position. | |
void | low_level_write (bin x) |
Write a binary value at the current file pointer position. | |
void | low_level_write (short x) |
Write a short value at the current file pointer position. | |
void | low_level_write (int x) |
Write an integer value at the current file pointer position. | |
void | low_level_write (float x) |
Write a float value at the current file pointer position. | |
void | low_level_write (double x) |
Write a double value at the current file pointer position. | |
void | low_level_write (const std::complex< float > &x) |
Write a float complex value at the current file pointer position. | |
void | low_level_write (const std::complex< double > &x) |
Write a double complex value at the current file pointer position. | |
void | low_level_write (const bvec &v) |
Write a bvec at the current file pointer position. | |
void | low_level_write (const svec &v) |
Write an svec at the current file pointer position. | |
void | low_level_write (const ivec &v) |
Write an ivec at the current file pointer position. | |
void | low_level_write (const vec &v) |
Write a vec at the current file pointer position. | |
void | low_level_write (const cvec &v) |
Write a cvec at the current file pointer position. | |
void | low_level_write (const std::string &str) |
Write a string at the current file pointer position. | |
void | low_level_write (const bmat &m) |
Write a bmat at the current file pointer position. | |
void | low_level_write (const smat &m) |
Write an smat at the current file pointer position. | |
void | low_level_write (const imat &m) |
Write an imat at the current file pointer position. | |
void | low_level_write (const mat &m) |
Write a mat at the current file pointer position. | |
void | low_level_write (const cmat &m) |
Write a cmat at the current file pointer position. | |
void | low_level_write (const Array< bin > &v) |
Write a bin Array at the current file pointer position. | |
void | low_level_write (const Array< short > &v) |
Write a short Array at the current file pointer position. | |
void | low_level_write (const Array< int > &v) |
Write an integer Array at the current file pointer position. | |
void | low_level_write (const Array< float > &v) |
Write a float Array at the current file pointer position. | |
void | low_level_write (const Array< double > &v) |
Write a double Array at the current file pointer position. | |
void | low_level_write (const Array< std::complex< float > > &v) |
Write a float complex Array at the current file pointer position. | |
void | low_level_write (const Array< std::complex< double > > &v) |
Write a double complex Array at the current file pointer position. | |
it_file & | operator<< (it_manip func) |
ACTION: ADD DOCUMENTATION FOR THIS MEMBER !!!!!!!! | |
void | remove (const std::string &name) |
Removes the variable name from the file. | |
bool | exists (const std::string &name) |
Returns true if the variable name exists in the file. | |
void | pack () |
Remove slack space from the file. | |
void | open (const std::string &filename) |
Open an existing file in read-only mode. | |
bool | read_check_file_header () |
Read and check the file header. Return true if the header is valid and false otherwise. | |
void | read_data_header (it_file_base::data_header &h) |
Read data header and return the result in the variable h . | |
void | low_level_read (char &x) |
Read a char value at the current file pointer position. | |
void | low_level_read (uint64_t &x) |
Read a 64-bit unsigned integer value at the current file pointer position. | |
void | low_level_read (bool &x) |
Read a bool value at the current file pointer position. | |
void | low_level_read (bin &x) |
Read a binary value at the current file pointer position. | |
void | low_level_read (short &x) |
Read a short value at the current file pointer position. | |
void | low_level_read (int &x) |
Read an integer value at the current file pointer position. | |
void | low_level_read (float &x) |
Read a float value at the current file pointer position. | |
void | low_level_read (double &x) |
Read a double value at the current file pointer position. | |
void | low_level_read (std::complex< float > &x) |
Read a float complex value at the current file pointer position. | |
void | low_level_read (std::complex< double > &x) |
Read a double complex value at the current file pointer position. | |
void | low_level_read (bvec &v) |
Read a vector of binary values at the current file pointer position. | |
void | low_level_read (svec &v) |
Read a vector of short integer values at the current file pointer position. | |
void | low_level_read (ivec &v) |
Read a vector of integer values at the current file pointer position. | |
void | low_level_read (std::string &str) |
Read a string at the current file pointer position. | |
void | low_level_read (bmat &m) |
Read a matrix of binary values at the current file pointer position. | |
void | low_level_read (smat &m) |
Read a matrix of short integer values at the current file pointer position. | |
void | low_level_read (imat &m) |
Read a matrix of integer values at the current file pointer position. | |
void | low_level_read (Array< bin > &v) |
Read an Array of binary values at the current file pointer position. | |
void | low_level_read (Array< short > &v) |
Read an Array of short integer values at the current file pointer position. | |
void | low_level_read (Array< int > &v) |
Read an Array of integer values at the current file pointer position. | |
void | low_level_read (Array< float > &v) |
Read an Array of float values at the current file pointer position. | |
void | low_level_read (Array< std::complex< float > > &v) |
Read an Array of float complex values at the current file pointer position. | |
void | low_level_read_lo (vec &v) |
Read a vector of float values at the current file pointer position. | |
void | low_level_read_lo (cvec &v) |
Read a vector of float complex values at the current file pointer position. | |
void | low_level_read_lo (mat &m) |
Read a matrix of float values at the current file pointer position. | |
void | low_level_read_lo (cmat &m) |
Read a matrix of float complex values at the current file pointer position. | |
void | low_level_read_lo (Array< double > &v) |
Read an Array of float values at the current file pointer position. | |
void | low_level_read_lo (Array< std::complex< double > > &v) |
Read an Array of float complex values at the current file pointer position. | |
void | low_level_read_hi (vec &v) |
Read a vector of double values at the current file pointer position. | |
void | low_level_read_hi (cvec &v) |
Read a vector of double complex values at the current file pointer position. | |
void | low_level_read_hi (mat &m) |
Read a matrix of double values at the current file pointer position. | |
void | low_level_read_hi (cmat &m) |
Read a matrix of double complex values at the current file pointer position. | |
void | low_level_read_hi (Array< double > &v) |
Read an Array of double values at the current file pointer position. | |
void | low_level_read_hi (Array< std::complex< double > > &v) |
Read an Array of double complex values at the current file pointer position. | |
bool | seek (const std::string &name) |
Find the variable name . | |
bool | seek (int n) |
Find the variable number n . | |
void | info (std::string &name, std::string &type, std::string &desc, uint64_t &bytes) |
Get information about the current variable. | |
Protected Member Functions | |
void | remove () |
Remove the current variable, denoted by next_name . | |
void | write_data_header_here (const data_header &h) |
Write data header h at the current file position. | |
std::string & | next_name () |
Name to be used for saving the next variable. | |
std::string & | next_desc () |
Description to be used for saving the next variable. | |
Protected Attributes | |
bool | low_prec |
Low precision flag. If true, use float type, otherwise double. | |
bfstream | s |
Protected binary file stream. | |
Static Protected Attributes | |
static char | file_magic [4] = { 'I', 'T', '+', '+' } |
IT++ file marker: "IT++". | |
static char | file_version = 3 |
IT++ file version. | |
|
explicit |
Constructor that calls open()
If the file does not exist it will be created. If trunc
is true, the file will be truncated.
Definition at line 506 of file itfile.cpp.
References open().
void itpp::it_file::open | ( | const std::string & | filename, |
bool | trunc = false |
||
) |
Open a file for reading and writing.
If the file does not exist it will be created. If trunc
is true, the file will be truncated.
Definition at line 512 of file itfile.cpp.
References itpp::binfile_details::Fstream_Binfile_Facade::close(), itpp::exist(), itpp::binfile_details::Fstream_Binfile_Facade::is_open(), it_assert, it_error, itpp::bfstream::open(), itpp::it_ifile::read_check_file_header(), itpp::it_ifile::s, and write_file_header().
Referenced by it_file(), and itpp::LDPC_Code::save_code().
Generated on Sat Jul 6 2013 10:54:30 for IT++ by Doxygen 1.8.2