SYNOPSIS

Inherits basic_filebuf< _CharT, _Traits >.

Public Types

typedef _CharT char_type

typedef traits_type::int_type int_type

typedef traits_type::off_type off_type

typedef traits_type::pos_type pos_type

typedef std::size_t size_t

typedef _Traits traits_type

Public Member Functions

stdio_filebuf ()

stdio_filebuf (int __fd, std::ios_base::openmode __mode, size_t __size=static_cast< size_t >(BUFSIZ))

stdio_filebuf (std::__c_file *__f, std::ios_base::openmode __mode, size_t __size=static_cast< size_t >(BUFSIZ))

virtual ~stdio_filebuf ()

int fd ()

std::__c_file * file ()

Detailed Description

template<typename _CharT, typename _Traits = std::char_traits<_CharT>>class __gnu_cxx::stdio_filebuf< _CharT, _Traits >

Provides a layer of compatibility for C/POSIX.

This GNU extension provides extensions for working with standard C FILE*'s and POSIX file descriptors. It must be instantiated by the user with the type of character used in the file stream, e.g., stdio_filebuf<char>.

Definition at line 50 of file stdio_filebuf.h.

Constructor & Destructor Documentation

template<typename _CharT , typename _Traits = std::char_traits<_CharT>> \fB__gnu_cxx::stdio_filebuf\fP< _CharT, _Traits >::\fBstdio_filebuf\fP ()\fC [inline]\fP

deferred initialization

Definition at line 65 of file stdio_filebuf.h.

template<typename _CharT , typename _Traits > \fB__gnu_cxx::stdio_filebuf\fP< _CharT, _Traits >::\fBstdio_filebuf\fP (int__fd, \fBstd::ios_base::openmode\fP__mode, size_t__size = \fCstatic_cast<size_t>(BUFSIZ)\fP)

Parameters:

__fd An open file descriptor.

__mode Same meaning as in a standard filebuf.

__size Optimal or preferred size of internal buffer, in chars.

This constructor associates a file stream buffer with an open POSIX file descriptor. The file descriptor will be automatically closed when the stdio_filebuf is closed/destroyed.

Definition at line 128 of file stdio_filebuf.h.

template<typename _CharT , typename _Traits > \fB__gnu_cxx::stdio_filebuf\fP< _CharT, _Traits >::\fBstdio_filebuf\fP (std::__c_file *__f, \fBstd::ios_base::openmode\fP__mode, size_t__size = \fCstatic_cast<size_t>(BUFSIZ)\fP)

Parameters:

__f An open FILE*.

__mode Same meaning as in a standard filebuf.

__size Optimal or preferred size of internal buffer, in chars. Defaults to system's BUFSIZ.

This constructor associates a file stream buffer with an open C FILE*. The FILE* will not be automatically closed when the stdio_filebuf is closed/destroyed.

Definition at line 144 of file stdio_filebuf.h.

template<typename _CharT , typename _Traits > \fB__gnu_cxx::stdio_filebuf\fP< _CharT, _Traits >::~\fBstdio_filebuf\fP ()\fC [virtual]\fP

Closes the external data stream if the file descriptor constructor was used.

Definition at line 123 of file stdio_filebuf.h.

Member Function Documentation

template<typename _CharT , typename _Traits = std::char_traits<_CharT>> int \fB__gnu_cxx::stdio_filebuf\fP< _CharT, _Traits >::fd ()\fC [inline]\fP

Returns:

The underlying file descriptor.

Once associated with an external data stream, this function can be used to access the underlying POSIX file descriptor. Note that there is no way for the library to track what you do with the descriptor, so be careful.

Definition at line 109 of file stdio_filebuf.h.

template<typename _CharT , typename _Traits = std::char_traits<_CharT>> std::__c_file* \fB__gnu_cxx::stdio_filebuf\fP< _CharT, _Traits >::file ()\fC [inline]\fP

Returns:

The underlying FILE*.

This function can be used to access the underlying 'C' file pointer. Note that there is no way for the library to track what you do with the file, so be careful.

Definition at line 119 of file stdio_filebuf.h.

Author

Generated automatically by Doxygen for libstdc++ from the source code.