mapgd  0.4
A program for the Maximum-likelihood analysis of population genomic data.
 All Data Structures Functions Variables Friends Groups Pages
Public Member Functions | Protected Member Functions
Data_file< Data > Class Template Reference
Inheritance diagram for Data_file< Data >:
Inheritance graph
[legend]
Collaboration diagram for Data_file< Data >:
Collaboration graph
[legend]

Public Member Functions

void open (const char *, const std::ios_base::openmode &)
 ! The function that opens a Data_file (if file).
 
void open_extention (const char *, const std::ios_base::openmode &)
 ! Doesn't check extension.
 
void open_from (Base_file &)
 ! Appends to a file. More...
 
void open_header (Base_file &)
 Opens a header for a Flat_file. More...
 
Data_filewrite (const Data &)
 Writes a row to the file and advances one row. More...
 
Data_fileread (Data &)
 Reads a row from the file and advances one row. More...
 
- Public Member Functions inherited from Base_file
const std::fstream::openmode & openmode ()
 returns the open mode.
 
const std::string & filename ()
 returns the filename.
 
 Base_file ()
 returns the concatenated flag. More...
 
void open_no_extention (const char *, const std::ios::openmode &)
 The function that opens a indexed_file (if file).
 
void open (const std::ios::openmode &)
 Opens a Base_file to the cin/cout.
 
void open (std::iostream *, const std::ios_base::openmode &)
 Opens a Base_file to an istream.
 
void open (std::istream *, const std::ios_base::openmode &)
 Opens a Base_file to an istream.
 
void open (std::ostream *, const std::ios_base::openmode &)
 Opens a Base_file to an istream.
 
std::istream * get_in (void)
 returns the istream.
 
std::ostream * get_out (void)
 returns the ostream.
 
void close (void)
 Close iostreams, writes tail, etc.
 
void close_table (void)
 Ends table w/o closing iostreams.
 
bool is_open (void) const
 Returns true iff Base_file is open.
 
bool table_is_open (void) const
 Returns true iff a table is open in Base_file.
 
bool binary (void) const
 Returns true iff a table is open in binary mode.
 
Dataread_header (void)
 Returns a pointer to a new instance of the derived data class.
 
void write_header (const Data *)
 
void write_header (const File_index &, const Data *)
 
Base_fileread (Data *)
 Reads from the istream.
 
Base_fileread (File_index &, Indexed_data *)
 
Base_filewrite (const Data *)
 Writes to the ostream.
 
Base_filewrite (File_index &, const Indexed_data *)
 
void seek (const std::streampos &pos)
 sets in and out (for reading and writing) to position pos.
 
void seekg (const std::streampos &pos)
 sets in (for reading) to position pos.
 
void seekp (const std::streampos &pos)
 sets out (for writing) to position pos.
 
void seek (std::streampos pos, std::ios_base::seekdir way)
 TODO.
 
void seekg (std::streampos off, std::ios_base::seekdir way)
 TODO.
 
void seekp (std::streampos off, std::ios_base::seekdir way)
 TODO.
 
std::streampos tellp (void)
 Tells streampos of out (writing)
 
std::streampos tellg (void)
 Tells streampos of in (reading)
 
void set_delim (const char &)
 Sets the delimiter that separates columns. Only used in text mode.
 
const char & get_delim (void) const
 Gets the delimiter that separates columns. Only used in text mode.
 
size_t size (void) const
 Returns the number of rows in the file. More...
 
bool eof (void)
 
bool indexed (void) const
 
bool concatenated (void)
 
bool check_concatenated (void)
 
bool check_compressed (void)
 

Protected Member Functions

void read_binary (Data &)
 Read file in binary mode.
 
void write_binary (const Data &)
 Write in binary mode.
 
virtual void read_text (Data &)
 
virtual void write_text (const Data &)
 

Additional Inherited Members

- Protected Attributes inherited from Base_file
bool open_
 indicates whether the iostream opened succesfully
 
bool table_open_
 indicates whether the header has been read successfully
 
bool concatenated_
 indicates whether multiple tables are included in the file
 
bool compressed_
 indicates whether the input/output stream is compressed.
 
char delim_column_
 The delimiter which separates columns.
 
bool read_
 File is open for reading.
 
bool write_
 File is open for writing.
 
bool binary_
 Binary mode flag.
 
bool try_binary_
 Attempt to set binary mode flag.
 
bool indexed_
 Indexed mode flag.
 
std::istream * in_
 All data is read from in.
 
std::ostream * out_
 All data is written is written to out.
 
Tmp_buffer buffer_
 a buffer which can be rewound.
 
std::fstream file_
 The file to read data from.
 
igzstream gzin_
 compressed istream.
 
ogzstream gzout_
 compressed ostream.
 
std::ios::openmode openmode_
 stores information about the mode in which the file was opened.
 
std::string filename_
 The name of the file if opened.
 

Member Function Documentation

template<class Data>
void Data_file< Data >::open_from ( Base_file )

! Appends to a file.

If there is a table open, it is immediately closed. This is because the information that follows may no longer be from the previous class, and the column labels need to changed accordingly. If the Flat_file was not opened in concatenate to disk, then make a new file with the extension T::file_name is created.

template<class Data>
void Data_file< Data >::open_header ( Base_file )

Opens a header for a Flat_file.

This method opens a file to the same i/o stream as Base_file iff Base_file is not associated with a file, and creates a file with the extension T:file_name otherwise. Base_file is not closed. This can result in data between the Base_file and the . . . being interspersed, potentially corrupting the file.

template<class Data>
Data_file& Data_file< Data >::read ( Data )

Reads a row from the file and advances one row.

Returns the class.

template<class Data>
Data_file& Data_file< Data >::write ( const Data )

Writes a row to the file and advances one row.

Returns the ostream.


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