|  | 
|  | file_stream_device (const std::string &file_name, read_tag tag=read_tag()) | 
|  | 
|  | file_stream_device (const char *file_name, read_tag=read_tag()) | 
|  | 
|  | file_stream_device (const std::string &file_name, write_tag tag) | 
|  | 
|  | file_stream_device (const char *file_name, write_tag) | 
|  | 
|  | file_stream_device (FILE *file) | 
|  | 
| FILE * | get () | 
|  | 
| const FILE * | get () const | 
|  | 
| int | getc_unchecked () | 
|  | 
| char | getc () | 
|  | 
| std::size_t | read (byte_t *data, std::size_t count) | 
|  | 
| template<typename T , int N> | 
| void | read (T(&buf)[N]) | 
|  | Reads array. 
 | 
|  | 
| uint8_t | read_uint8 () | 
|  | Reads byte. 
 | 
|  | 
| uint16_t | read_uint16 () | 
|  | Reads 16 bit little endian integer. 
 | 
|  | 
| uint32_t | read_uint32 () | 
|  | Reads 32 bit little endian integer. 
 | 
|  | 
| template<typename T > | 
| std::size_t | write (const T *buf, std::size_t count) | 
|  | Writes number of elements from a buffer. 
 | 
|  | 
| template<typename T , std::size_t N> | 
| void | write (const T(&buf)[N]) | 
|  | Writes array. 
 | 
|  | 
| void | write_uint8 (uint8_t x) | 
|  | Writes byte. 
 | 
|  | 
| void | write_uint16 (uint16_t x) | 
|  | Writes 16 bit little endian integer. 
 | 
|  | 
| void | write_uint32 (uint32_t x) | 
|  | Writes 32 bit little endian integer. 
 | 
|  | 
| void | seek (long count, int whence=SEEK_SET) | 
|  | 
| long int | tell () | 
|  | 
| void | flush () | 
|  | 
| void | print_line (const std::string &line) | 
|  | Prints formatted ASCII text. 
 | 
|  | 
| int | error () | 
|  | 
template<typename FormatTag>
class boost::gil::detail::file_stream_device< FormatTag >
Implements the IODevice concept c.f. to Concept of IO Device required by Image libraries like libjpeg and libpng.
- Todo:
- switch to a sane interface as soon as there is something good in boost. I.E. the IOChains library would fit very well here.
This implementation is based on FILE*.