A library for working with phylogenetic and population genetic data.
v0.32.0
SynchronousReader Class Reference

#include <genesis/utils/io/input_reader.hpp>

Detailed Description

Read bytes from an InputSource into a char buffer.

The reading is done synchronously, that is, reading occurs on request. This is usually slower than asynchronous reading (see AsynchronousReader).

Implementation details inspired by fast-cpp-csv-parser by Ben Strasser, see also Acknowledgements.

Definition at line 252 of file input_reader.hpp.

Public Member Functions

 SynchronousReader (std::shared_ptr< BaseInputSource > input_source)
 
 SynchronousReader (SynchronousReader &&)=default
 
 SynchronousReader (SynchronousReader const &)=delete
 
 ~SynchronousReader ()=default
 
std::string class_name () const
 
size_t finish_reading ()
 
std::shared_ptr< BaseInputSourceinput_source () const
 
SynchronousReaderoperator= (SynchronousReader &&)=default
 
SynchronousReaderoperator= (SynchronousReader const &)=delete
 
void start_reading (char *target_buffer, size_t target_size)
 
bool valid () const
 

Constructor & Destructor Documentation

◆ SynchronousReader() [1/3]

SynchronousReader ( std::shared_ptr< BaseInputSource input_source)
inline

Definition at line 260 of file input_reader.hpp.

◆ ~SynchronousReader()

~SynchronousReader ( )
default

◆ SynchronousReader() [2/3]

SynchronousReader ( SynchronousReader const &  )
delete

◆ SynchronousReader() [3/3]

Member Function Documentation

◆ class_name()

std::string class_name ( ) const
inline

Definition at line 288 of file input_reader.hpp.

◆ finish_reading()

size_t finish_reading ( )
inline

Definition at line 303 of file input_reader.hpp.

◆ input_source()

std::shared_ptr<BaseInputSource> input_source ( ) const
inline

Definition at line 283 of file input_reader.hpp.

◆ operator=() [1/2]

SynchronousReader& operator= ( SynchronousReader &&  )
default

◆ operator=() [2/2]

SynchronousReader& operator= ( SynchronousReader const &  )
delete

◆ start_reading()

void start_reading ( char *  target_buffer,
size_t  target_size 
)
inline

Definition at line 297 of file input_reader.hpp.

◆ valid()

bool valid ( ) const
inline

Definition at line 278 of file input_reader.hpp.


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