Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

BinaryFile Class Reference

a binary file (with simple compression). More...

#include <BinFile.h>

Inheritance diagram for rs::file::BinaryFile:

Inheritance graph
[legend]
Collaboration diagram for BinaryFile:

Collaboration graph
[legend]
List of all members.

Public Methods

 BinaryFile (const std::string &filename_, BinaryFileType type_)
 creates a binary file throws an IOError if anything goes wrong. More...

virtual ~BinaryFile ()
const std::string & name () const
 returns filename. More...

bool good ()
 like 'iostream'.good(). More...

bool eof ()
 like 'iostream'.eof(). More...

void put_char (unsigned char c)
 write a character to a binary output file. More...

void get_char (unsigned char &c)
 read a character from a binary input file. More...

void put_nat (unsigned long nat)
 write a value to BinaryFile. More...

void get_nat (unsigned long &i)
 read an value from a BinaryFile. More...

void put_long (long i)
 write a signed value to a BinaryFile. More...

void get_long (long &i)
void put_int (int i)
 write a signed int to a binary output file. More...

void get_int (int &i)
 read a signed int from a binary input file. More...

void write_bytes (const unsigned char *buf, std::streamsize size)
 write some bytes to a binary output file. More...

void read_bytes (unsigned char *buf, std::streamsize size)
 read some bytes from a binary input file. More...

void put_string (const std::string &s)
 write a string to a binary output file. More...

void get_string (std::string &s)
 read a string from a binary input file. More...


Private Attributes

std::string filename
BinaryFileType type
std::fstream * file

Detailed Description

a binary file (with simple compression).

Definition at line 41 of file BinFile.h.


Constructor & Destructor Documentation

BinaryFile const std::string &    filename_,
BinaryFileType    type_
[inline]
 

creates a binary file throws an IOError if anything goes wrong.

Parameters:
filename_  name of the file
type_  BF_INPUT creates a binary input file, BF_OUTPUT creates a binary output file

Definition at line 52 of file BinFile.h.

virtual ~BinaryFile   [inline, virtual]
 

Definition at line 64 of file BinFile.h.


Member Function Documentation

const std::string& name   const [inline]
 

returns filename.

Definition at line 67 of file BinFile.h.

Referenced by rs::file::loadDirectories().

bool good   [inline]
 

like 'iostream'.good().

Definition at line 70 of file BinFile.h.

bool eof   [inline]
 

like 'iostream'.eof().

Definition at line 73 of file BinFile.h.

void put_char unsigned char    c [inline]
 

write a character to a binary output file.

Parameters:
c  character to write

Definition at line 80 of file BinFile.h.

void get_char unsigned char &    c [inline]
 

read a character from a binary input file.

Parameters:
c  character is read into c

Definition at line 87 of file BinFile.h.

void put_nat unsigned long    nat [inline]
 

write a value to BinaryFile.

Note:
Depending on the value 1 to 5 bytes are written.
Parameters:
nat  value to be written

Definition at line 100 of file BinFile.h.

Referenced by Directory::save(), and rs::file::saveDirectories().

void get_nat unsigned long &    i [inline]
 

read an value from a BinaryFile.

Parameters:
i  value is read into i
Note:
value must be written with put_nat()

Definition at line 133 of file BinFile.h.

Referenced by Directory::load(), and rs::file::loadDirectories().

void put_long long    i [inline]
 

write a signed value to a BinaryFile.

Parameters:
i  signed long to be written

Definition at line 164 of file BinFile.h.

void get_long long &    i [inline]
 

read a signed value from a BinaryFile

Parameters:
i  signed long is read into i
Note:
value must be written with put_long()

Definition at line 179 of file BinFile.h.

void put_int int    i [inline]
 

write a signed int to a binary output file.

Parameters:
i  signed int to be written

Definition at line 192 of file BinFile.h.

Referenced by rs::file::saveDirectories().

void get_int int &    i [inline]
 

read a signed int from a binary input file.

Parameters:
i  signed int is read into i
Note:
value must be written with put_int()

Definition at line 197 of file BinFile.h.

Referenced by rs::file::loadDirectories().

void write_bytes const unsigned char *    buf,
std::streamsize    size
[inline]
 

write some bytes to a binary output file.

Parameters:
buf  contains the bytes to be written
size  number of bytes to be written

Definition at line 204 of file BinFile.h.

Referenced by rs::file::put_binary().

void read_bytes unsigned char *    buf,
std::streamsize    size
[inline]
 

read some bytes from a binary input file.

Parameters:
buf  the bytes will be written to buf
size  number of bytes to be read

Definition at line 212 of file BinFile.h.

Referenced by rs::file::get_binary().

void put_string const std::string &    s [inline]
 

write a string to a binary output file.

Parameters:
s  the string to be written

Definition at line 219 of file BinFile.h.

Referenced by Directory::save(), and rs::file::saveDirectories().

void get_string std::string &    s [inline]
 

read a string from a binary input file.

Parameters:
s  string is read into s

Definition at line 225 of file BinFile.h.

Referenced by Directory::load(), and rs::file::loadDirectories().


Member Data Documentation

std::string filename [private]
 

Definition at line 43 of file BinFile.h.

BinaryFileType type [private]
 

Definition at line 44 of file BinFile.h.

std::fstream* file [private]
 

Definition at line 45 of file BinFile.h.


The documentation for this class was generated from the following file:
Contact me in case of errors or questions.
This documentation is powered by Doxygen.
(C) 2000-2002 Doxygen