#include <ios_base.h>
Inheritance diagram for std::ios_base:
Public Types | |
typedef _Ios_Fmtflags | fmtflags |
This is a bitmask type. | |
typedef _Ios_Iostate | iostate |
This is a bitmask type. | |
typedef _Ios_Openmode | openmode |
This is a bitmask type. | |
typedef _Ios_Seekdir | seekdir |
This is an enumerated type. | |
typedef void(* | event_callback )(event, ios_base &, int) |
The type of an event callback function. | |
enum | event { erase_event, imbue_event, copyfmt_event } |
The set of events that may be passed to an event callback. More... | |
Public Member Functions | |
void | register_callback (event_callback __fn, int __index) |
Add the callback __fn with parameter __index. | |
fmtflags | flags () const |
Access to format flags. | |
fmtflags | flags (fmtflags __fmtfl) |
Setting new format flags all at once. | |
fmtflags | setf (fmtflags __fmtfl) |
Setting new format flags. | |
fmtflags | setf (fmtflags __fmtfl, fmtflags __mask) |
Setting new format flags. | |
void | unsetf (fmtflags __mask) |
Clearing format flags. | |
streamsize | precision () const |
Flags access. | |
streamsize | precision (streamsize __prec) |
Changing flags. | |
streamsize | width () const |
Flags access. | |
streamsize | width (streamsize __wide) |
Changing flags. | |
locale | imbue (const locale &__loc) |
Setting a new locale. | |
locale | getloc () const |
Locale access. | |
const locale & | _M_getloc () const |
Locale access. | |
long & | iword (int __ix) |
Access to integer array. | |
void *& | pword (int __ix) |
Access to void pointer array. | |
virtual | ~ios_base () |
Static Public Member Functions | |
bool | sync_with_stdio (bool __sync=true) |
Interaction with the standard C I/O objects. | |
int | xalloc () throw () |
Access to unique indices. | |
Static Public Attributes | |
const fmtflags | boolalpha = fmtflags(__ios_flags::_S_boolalpha) |
Insert/extract bool in alphabetic rather than numeric format. | |
const fmtflags | dec = fmtflags(__ios_flags::_S_dec) |
Converts integer input or generates integer output in decimal base. | |
const fmtflags | fixed = fmtflags(__ios_flags::_S_fixed) |
Generate floating-point output in fixed-point notation. | |
const fmtflags | hex = fmtflags(__ios_flags::_S_hex) |
Converts integer input or generates integer output in hexadecimal base. | |
const fmtflags | internal = fmtflags(__ios_flags::_S_internal) |
const fmtflags | left = fmtflags(__ios_flags::_S_left) |
const fmtflags | oct = fmtflags(__ios_flags::_S_oct) |
Converts integer input or generates integer output in octal base. | |
const fmtflags | right = fmtflags(__ios_flags::_S_right) |
const fmtflags | scientific = fmtflags(__ios_flags::_S_scientific) |
Generates floating-point output in scientific notation. | |
const fmtflags | showbase = fmtflags(__ios_flags::_S_showbase) |
const fmtflags | showpoint = fmtflags(__ios_flags::_S_showpoint) |
const fmtflags | showpos = fmtflags(__ios_flags::_S_showpos) |
Generates a + sign in non-negative generated numeric output. | |
const fmtflags | skipws = fmtflags(__ios_flags::_S_skipws) |
Skips leading white space before certain input operations. | |
const fmtflags | unitbuf = fmtflags(__ios_flags::_S_unitbuf) |
Flushes output after each output operation. | |
const fmtflags | uppercase = fmtflags(__ios_flags::_S_uppercase) |
const fmtflags | adjustfield = fmtflags(__ios_flags::_S_adjustfield) |
A mask of left|right|internal. Useful for the 2-arg form of setf . | |
const fmtflags | basefield = fmtflags(__ios_flags::_S_basefield) |
A mask of dec|oct|hex. Useful for the 2-arg form of setf . | |
const fmtflags | floatfield = fmtflags(__ios_flags::_S_floatfield) |
A mask of scientific|fixed. Useful for the 2-arg form of setf . | |
const iostate | badbit = iostate(__ios_flags::_S_badbit) |
const iostate | eofbit = iostate(__ios_flags::_S_eofbit) |
Indicates that an input operation reached the end of an input sequence. | |
const iostate | failbit = iostate(__ios_flags::_S_failbit) |
const iostate | goodbit = iostate(0) |
Indicates all is well. | |
const openmode | app = openmode(__ios_flags::_S_app) |
Seek to end before each write. | |
const openmode | ate = openmode(__ios_flags::_S_ate) |
Open and seek to end immediately after opening. | |
const openmode | binary = openmode(__ios_flags::_S_bin) |
const openmode | in = openmode(__ios_flags::_S_in) |
Open for input. Default for ifstream and fstream. | |
const openmode | out = openmode(__ios_flags::_S_out) |
Open for output. Default for ofstream and fstream. | |
const openmode | trunc = openmode(__ios_flags::_S_trunc) |
Open for input. Default for ofstream . | |
const seekdir | beg = seekdir(0) |
Request a seek relative to the beginning of the stream. | |
const seekdir | cur = seekdir(SEEK_CUR) |
Request a seek relative to the current position within the sequence. | |
const seekdir | end = seekdir(SEEK_END) |
Request a seek relative to the current end of the sequence. | |
Protected Member Functions | |
void | _M_call_callbacks (event __ev) throw () |
void | _M_dispose_callbacks (void) |
_Words & | _M_grow_words (int __index, bool __iword) |
void | _M_init () |
ios_base () | |
Protected Attributes | |
_Callback_list * | _M_callbacks |
_Words | _M_word_zero |
_Words | _M_local_word [_S_local_word_size] |
int | _M_word_size |
_Words * | _M_word |
locale | _M_ios_locale |
streamsize | _M_precision |
streamsize | _M_width |
fmtflags | _M_flags |
iostate | _M_exception |
iostate | _M_streambuf_state |
Static Protected Attributes | |
const int | _S_local_word_size = 8 |
Private Member Functions | |
ios_base (const ios_base &) | |
ios_base & | operator= (const ios_base &) |
This class defines everything that can be defined about I/O that does not depend on the type of characters being input or output. Most people will only see ios_base
when they need to specify the full name of the various I/O flags (e.g., the openmodes).
Definition at line 201 of file ios_base.h.
|
The type of an event callback function.
Definition at line 437 of file ios_base.h. Referenced by std::ios_base::_Callback_list::_Callback_list(). |
|
This is a bitmask type.
Definition at line 253 of file ios_base.h. Referenced by std::__int_to_char(), std::money_put< _CharT, _OutIter >::_M_insert(), std::__pad< _CharT, _Traits >::_S_pad(), std::num_get< _CharT, _InIter >::do_get(), std::num_put< _CharT, _OutIter >::do_put(), std::basic_ostream< _CharT, _Traits >::operator<<(), std::basic_ostream< char >::operator<<(), std::operator<<(), std::operator>>(), std::resetiosflags(), and std::setiosflags(). |
|
|
|
This is an enumerated type.
Definition at line 392 of file ios_base.h. Referenced by std::basic_filebuf< _CharT, _Traits >::_M_seek(), std::basic_streambuf< _CharT, enc_char_traits< _CharT > >::pubseekoff(), std::basic_istream< _CharT, _Traits >::seekg(), std::basic_streambuf< _CharT, enc_char_traits< _CharT > >::seekoff(), __gnu_cxx::stdio_sync_filebuf< _CharT, _Traits >::seekoff(), std::basic_stringbuf< _CharT, _Traits, _Alloc >::seekoff(), std::basic_filebuf< _CharT, _Traits >::seekoff(), and std::basic_ostream< _CharT, _Traits >::seekp(). |
|
The set of events that may be passed to an event callback. erase_event is used during ~ios() and copyfmt(). imbue_event is used during imbue(). copyfmt_event is used during copyfmt(). Definition at line 420 of file ios_base.h. |
|
Invokes each callback with erase_event. Destroys local storage. Note that the ios_base object for the standard streams never gets destroyed. As a result, any callbacks registered with the standard streams will not get invoked with erase_event (unless copyfmt is used). |
|
|
|
|
|
Referenced by std::basic_ios< _CharT, _Traits >::copyfmt(). |
|
Referenced by std::basic_ios< _CharT, _Traits >::copyfmt(). |
|
Locale access.
Definition at line 702 of file ios_base.h. References _M_ios_locale. Referenced by std::money_get< _CharT, _InIter >::_M_extract(), std::time_get< _CharT, _InIter >::_M_extract_name(), std::time_get< _CharT, _InIter >::_M_extract_num(), std::time_get< _CharT, _InIter >::_M_extract_via_format(), std::money_put< _CharT, _OutIter >::_M_insert(), std::__pad< _CharT, _Traits >::_S_pad(), std::money_get< _CharT, _InIter >::do_get(), std::num_get< _CharT, _InIter >::do_get(), std::time_get< _CharT, _InIter >::do_get_date(), std::time_get< _CharT, _InIter >::do_get_monthname(), std::time_get< _CharT, _InIter >::do_get_time(), std::time_get< _CharT, _InIter >::do_get_weekday(), std::time_get< _CharT, _InIter >::do_get_year(), std::time_put< _CharT, _OutIter >::do_put(), std::num_put< _CharT, _OutIter >::do_put(), and std::time_put< _CharT, _OutIter >::put(). |
|
|
|
|
|
Setting new format flags all at once.
Definition at line 560 of file ios_base.h. References _M_flags. |
|
Access to format flags.
Definition at line 550 of file ios_base.h. References _M_flags. Referenced by std::money_get< _CharT, _InIter >::_M_extract(), std::money_put< _CharT, _OutIter >::_M_insert(), std::__pad< _CharT, _Traits >::_S_pad(), std::basic_ios< _CharT, _Traits >::copyfmt(), std::num_get< _CharT, _InIter >::do_get(), std::num_put< _CharT, _OutIter >::do_put(), std::basic_ostream< _CharT, _Traits >::operator<<(), std::basic_ostream< char >::operator<<(), std::operator<<(), and std::basic_istream< _CharT, _Traits >::sentry::sentry(). |
|
Locale access.
imbue(loc) has previously been called, then this function returns loc . Otherwise, it returns a copy of std::locale() , the global C++ locale.
Definition at line 692 of file ios_base.h. References _M_ios_locale. Referenced by std::basic_ios< _CharT, _Traits >::copyfmt(), std::money_put< _CharT, _OutIter >::do_put(), std::operator>>(), and std::ws(). |
|
Setting a new locale.
Reimplemented in std::basic_ios< _CharT, _Traits >, and std::basic_ios< char, _Traits >. |
|
Access to integer array.
The implementation reserves several indices. You should use xalloc to obtain an index that is safe to use. Also note that since the array can grow dynamically, it is not safe to hold onto the reference. Definition at line 736 of file ios_base.h. References _M_grow_words(), std::ios_base::_Words::_M_iword, _M_word, and _M_word_size. |
|
|
|
Changing flags.
Definition at line 628 of file ios_base.h. References _M_precision, and std::streamsize. |
|
Flags access.
Definition at line 620 of file ios_base.h. References _M_precision. Referenced by std::basic_ios< _CharT, _Traits >::copyfmt(), std::operator<<(), and std::operator>>(). |
|
Access to void pointer array.
The implementation reserves several indices. You should use xalloc to obtain an index that is safe to use. Also note that since the array can grow dynamically, it is not safe to hold onto the reference. Definition at line 757 of file ios_base.h. References _M_grow_words(), std::ios_base::_Words::_M_pword, _M_word, and _M_word_size. |
|
Add the callback __fn with parameter __index.
|
|
Setting new format flags.
& mask. An example mask is ios_base::adjustfield .
Definition at line 593 of file ios_base.h. References _M_flags. |
|
Setting new format flags.
Definition at line 576 of file ios_base.h. References _M_flags. Referenced by std::boolalpha(), std::dec(), std::fixed(), std::hex(), std::internal(), std::left(), std::oct(), std::operator<<(), std::operator>>(), std::right(), std::scientific(), std::showbase(), std::showpoint(), std::showpos(), std::skipws(), std::unitbuf(), and std::uppercase(). |
|
Interaction with the standard C I/O objects.
|
|
Clearing format flags.
Definition at line 608 of file ios_base.h. References _M_flags. Referenced by std::noboolalpha(), std::noshowbase(), std::noshowpoint(), std::noshowpos(), std::noskipws(), std::nounitbuf(), and std::nouppercase(). |
|
Changing flags.
Definition at line 650 of file ios_base.h. References _M_width, and std::streamsize. |
|
Flags access.
Definition at line 642 of file ios_base.h. References _M_width. Referenced by std::money_put< _CharT, _OutIter >::_M_insert(), std::basic_ios< _CharT, _Traits >::copyfmt(), std::num_put< _CharT, _OutIter >::do_put(), std::operator<<(), and std::operator>>(). |
|
Access to unique indices.
The implementation maintains a static variable that is incremented and returned on each invocation. xalloc is guaranteed to return an index that is safe to use in the iword and pword arrays. |
|
Definition at line 489 of file ios_base.h. Referenced by std::basic_ios< _CharT, _Traits >::copyfmt(). |
|
Definition at line 462 of file ios_base.h. |
|
Definition at line 461 of file ios_base.h. |
|
Definition at line 521 of file ios_base.h. Referenced by _M_getloc(), and getloc(). |
|
Definition at line 511 of file ios_base.h. |
|
Definition at line 459 of file ios_base.h. Referenced by precision(). |
|
Definition at line 463 of file ios_base.h. |
|
Definition at line 460 of file ios_base.h. Referenced by width(). |
|
Definition at line 515 of file ios_base.h. Referenced by std::basic_ios< _CharT, _Traits >::copyfmt(), iword(), and pword(). |
|
Definition at line 514 of file ios_base.h. Referenced by std::basic_ios< _CharT, _Traits >::copyfmt(), iword(), and pword(). |
|
Definition at line 506 of file ios_base.h. |
|
Definition at line 510 of file ios_base.h. |
|
A mask of left|right|internal. Useful for the 2-arg form of
Definition at line 308 of file ios_base.h. |
|
Seek to end before each write.
Definition at line 362 of file ios_base.h. |
|
Open and seek to end immediately after opening.
Definition at line 365 of file ios_base.h. |
|
Indicates a loss of integrity in an input or output sequence (such as an irrecoverable read error from a file). Definition at line 332 of file ios_base.h. |
|
A mask of dec|oct|hex. Useful for the 2-arg form of
Definition at line 311 of file ios_base.h. |
|
Request a seek relative to the beginning of the stream.
Definition at line 395 of file ios_base.h. |
|
Perform input and output in binary mode (as opposed to text mode). This is probably not what you think it is; see http://gcc.gnu.org/onlinedocs/libstdc++/27_io/howto.html#3 and http://gcc.gnu.org/onlinedocs/libstdc++/27_io/howto.html#7 for more. Definition at line 371 of file ios_base.h. |
|
Insert/extract
Definition at line 256 of file ios_base.h. |
|
Request a seek relative to the current position within the sequence.
Definition at line 398 of file ios_base.h. |
|
Converts integer input or generates integer output in decimal base.
Definition at line 259 of file ios_base.h. |
|
Request a seek relative to the current end of the sequence.
Definition at line 401 of file ios_base.h. |
|
Indicates that an input operation reached the end of an input sequence.
Definition at line 335 of file ios_base.h. |
|
Indicates that an input operation failed to read the expected characters, or that an output operation failed to generate the desired characters. Definition at line 340 of file ios_base.h. |
|
Generate floating-point output in fixed-point notation.
Definition at line 262 of file ios_base.h. |
|
A mask of scientific|fixed. Useful for the 2-arg form of
Definition at line 314 of file ios_base.h. |
|
Indicates all is well.
Definition at line 343 of file ios_base.h. |
|
Converts integer input or generates integer output in hexadecimal base.
Definition at line 265 of file ios_base.h. |
|
Open for input. Default for
Definition at line 374 of file ios_base.h. |
|
Adds fill characters at a designated internal point in certain generated output, or identical to Definition at line 270 of file ios_base.h. |
|
Adds fill characters on the right (final positions) of certain generated output. (I.e., the thing you print is flush left.) Definition at line 274 of file ios_base.h. |
|
Converts integer input or generates integer output in octal base.
Definition at line 277 of file ios_base.h. |
|
Open for output. Default for
Definition at line 377 of file ios_base.h. |
|
Adds fill characters on the left (initial positions) of certain generated output. (I.e., the thing you print is flush right.) Definition at line 281 of file ios_base.h. |
|
Generates floating-point output in scientific notation.
Definition at line 284 of file ios_base.h. |
|
Generates a prefix indicating the numeric base of generated integer output. Definition at line 288 of file ios_base.h. |
|
Generates a decimal-point character unconditionally in generated floating-point output. Definition at line 292 of file ios_base.h. |
|
Generates a + sign in non-negative generated numeric output.
Definition at line 295 of file ios_base.h. |
|
Skips leading white space before certain input operations.
Definition at line 298 of file ios_base.h. |
|
Open for input. Default for
Definition at line 380 of file ios_base.h. |
|
Flushes output after each output operation.
Definition at line 301 of file ios_base.h. |
|
Replaces certain lowercase letters with their uppercase equivalents in generated output. Definition at line 305 of file ios_base.h. |