Index
A
- absolute value, complex number, 41
- angle, complex number, 41
- applications, MT-safe, 80
- archives, static, 8
- argument, complex number, 41
B
- binary input, 60
- binary output, 57
- buffer, 76
- buffer, flushing output, 57
C
- C++ documentation, xii
- c_exception, 46
- cerr, 51, 90
- char extractor, 59
- char* extractor, 59
- characters, reading, 59
- chr, 82
- chr_r, 82
- cin, 51, 90
- class c_exception, 46
- class complex, 42
- arithmetic, 43
- constructors, 42
- efficiency, 49
- error handling, 46
- input/output, 47
- mathematical functions, 44
- mixed-mode arithmetic, 48
- class fstream, 52, 62
- class histogram, 34
- class ifstream, 52, 62
- class Interrupt_handler, 35
- class iostream, 52
- class istream, 52
- class istrstream, 52
- class object, 12
- class ofstream, 52, 62
- class omanip_long, 72
- class ostream, 52
- class ostrstream, 52
- class qtail, 25
- class sched, 12
- class smanip_int, 71
- class stdiobuf, 72
- class streambuf, 73
- class strstream, 52
- class task, 13, 15
- class timer, 23
- class urand, 34
- clog, 51, 90
- compiler options
- lcomplex, 3
- lrwtool, 4
- ltask, 4
- xar, 9
- complex conjugate, 41
- complex numbers, 41
- complex, See class complex
- complex::
- abs, 44
- acos, 45
- arg, 44
- asin, 45
- atan, 45
- complex, 42
- conj, 44
- cos, 45
- cosh, 45, 47
- exp, 45, 47
- imag, 44
- log, 45, 47
- log10, 45, 47
- norm, 45
- polar, 45
- pow, 45
- real, 45
- sin, 45
- sinh, 45, 47
- sqrt, 45
- tan, 45
- tanh, 45
- complex_error, 46
- copying files, 74
- core classes, LibC, 80
- coroutine
- See also task
- coroutine class structure, 12
- coroutine library, 12
- cout, 51, 90
D
- dec, 82
- dec (manipulator), 67
- dec_r, 82
- defining a mutual exclusion region, 93
- deriving MT-safe classes, considerations, 94
E
- EDOM, 47
- EMODE, 28
- endl (manipulator), 67
- ends (manipulator), 67
- erand::
- constructor, 34
- draw, 34
- ERANGE, 47
- errno, 46
- Error, xiii
- error checking, 83
- error state, iostreams, 56
- extend functionality of iostream classes, 94
- extraction, 76
- extraction operators, 57
- extractor
- char, 59
- char*, 59
- whitespace, 60
F
- FIFO queues, 25
- file descriptors, using, 65
- files
- copying, 74
- opening and closing, 65
- repositioning, 65
- using fstreams with, 62
- filter, 29
- flush (manipulator), 57, 67
- form, 82
- form_r, 82
- format control with iostreams, 67
- fstream, 76
- fstream.h, 53, 63
- fstream::
- attach, 65
- close, 65
- open, 65
G
- gcount function, 84
- get pointer, 73
- global data, in a multithreaded application, 90
- global shared objects, default, 90
H
- hex, 82
- hex (manipulator), 67
- hex_r, 82
- histogram::
- add, 34
- binsize, 35
- constructor, 34
- h, 35
- l, 34
- nbin, 35
- print, 34
- r, 34
- sqsum, 35
- sum, 35
- histograms, 34
I
- I/O library, 51
- input, 51, 57
- binary, 60
- peeking, 60
- input errors, handling, 61
- insertion, 76
- insertion operator, 53
- defining, 55
- interrupt alerter, 36
- Interrupt_handler::
- ~Interrupt_handler, 35
- Interrupt_handler, 35
- pending, 35
- interrupts, 35
- iomanip classes, 71
- iomanip.h, 53, 68
- ios::
- app, 64
- ate, 64
- badbit, 56
- beg, 66
- cur, 66
- end, 66
- eofbit, 56
- failbit, 56
- good, 56
- goodbit, 56
- hardfail, 56
- in, 64
- io_state, 56
- nocreate, 64
- noreplace, 64
- open_mode, 64
- operator !, 56, 61
- operator void *, 56
- out, 64
- seek_dir, 66
- sync_with_stdio, 62
- trunc, 64
- iostream, 76
- library, 51
- manual pages, 75
- iostream.h, 53
- iostreams
- copying, 66
- creating, 62
- error bits, 56
- errors, 55, 61
- flushing, 57
- formats, 67
- header files, 53
- input, 57
- manipulators, 67
- output to, 53
- predefined, 51
- stdio, 62, 72
- structure, 51
- terminology, 76
- using, 53
- istream::
- operator >>, 57
- peek, 60
- read, 60
- seekg, 65
- tellg, 65
L
- left-shift operator, 53
- libC core classes, 80
- libC library, 79, 82
- library, 1
- class, 1
- object, 1
- shared, 6
- standard, 4
- looking ahead at input, 60
M
- magnitude, complex number, 41
- man, xiii
- manipulators, 67
- plain, 68
- predefined, 67
- Manual, xiii
- MT-safe, 79
- MT-safe applications, 80
- MT-safe classes
- considerations for deriving, 94
- MT-safe objects, 80
- multithreaded environment, 79
- mutex locks, 94
O
- object, MT-safe, 80
- object::
- alert, 13
- forget, 13
- INTHANDLER, 13
- o_type, 13
- OBJECT, 13
- objtype, 13
- pending, 13
- print, 13
- QHEAD, 13
- QTAIL, 13
- remember, 13
- TASK, 13
- this_task, 13
- TIMER, 13
- oct, 82
- oct (manipulator), 67
- oct_r, 82
- Online, xiii
- operations, performing a sequence of, 91
- ostream::
- operator <<, 53, 55
- seekp, 65
- tellp, 65
- write, 57
- output, 51
- output buffer flushing, 57
- output, binary, 57
- output, handling errors, 55
- overflow function, 94
P
- parameterized manipulators, 67, 71
- pbackfail function, 94
- peeking at input, 60
- pending objects, 19
- pending tasks, 19
- plain manipulators, 68
- polar, complex number, 41
- prerequsite reading, xii
- public functions, MT-safe, 82
- public virtual functions, of streambuf, 94
- Purpose, xi
- purpose of guide, xi
- put pointer, 73
Q
- qhead::
- cut, 32
- get, 25
- putback, 25
- qtail, 25
- rdcount, 29
- rdmax, 29
- rdmode, 29
- rdspace, 29
- setmax, 29
- setmode, 29
- splice, 32
- qmodetype, 29
- qtail::
- cut, 32
- put, 25
- rdcount, 29
- rdmax, 29
- rdmode, 29
- rdspace, 29
- setmax, 29
- setmode, 29
- splice, 32
- queue
- cutting and splicing, 29
- EMODE, 28
- size, 29
- WMODE, 28
- ZMODE, 28
- queues, 24
- FIFO, 25
- modes, 28
- queues, and suspension, 20
R
- randint::
- ddraw, 33
- draw, 33
- fdraw, 33
- randint, 33
- seed, 33
- random numbers, 33
- README, xiii
- real time, 35
- repositioning within a file, 65
- resetiosflags (manipulator), 68
- right-shift operator, 57
- run chain, 32
S
- sched::
- get_clock, 22
- IDLE, 15
- rdstate, 16
- rdtime, 16
- result, 16
- RUNNING, 15
- setclock, 22
- statetype, 16
- TERMINATED, 15
- scheduling, 32
- scope resolution operator, 85
- seekoff function, 94
- seekpos, 94
- setbase (manipulator), 67
- setfill (manipulator), 68
- setioflags (manipulator), 68
- setprecision (manipulator), 68
- setw (manipulator), 68
- shared objects, strategies for dealing with, 91
- single characters, reading, 59
- skip flag, 60
- skipping whitespace, 60
- sleeping tasks, 20
- standard error, 51
- standard input, 51
- standard output, 51
- standard streams, 90
- static data, in a multithreaded application, 90
- stdio and iostreams, 72
- stdio, with iostreams, 62
- stdiostream.h, 53
- stream, 77
- stream.h, 53, 90
- stream_locker, 92
- stream_locker class, 91
- stream_locker object, 94
- stream_MT, 81
- streambuf, 77, 81
- file-like, 73
- get pointer, 73
- put pointer, 73
- queue-like, 73
- streambufs, using, 73
- streampos, 65
- strstream, 77
- strstream.h, 53
T
- task
- example, 17
- interrupts, 35
- parts of, 17
- preemption, 32
- real time, 35
- run chain, 32
- states, 15, 19
- time, 22
- wait states, 19
- waiting, 21, 22
- task::
- ~task, 17
- cancel, 17
- constructor, 17
- DEDICATED, 17
- delay, 17, 22
- IDLE, 17
- modetype, 17
- preempt, 17
- rdstate, 17
- rdtime, 17
- result, 17, 20
- resultis, 17
- RUNNING, 17
- SHARED, 17
- sleep, 17, 20
- statetype, 17
- t_name, 17
- t_next, 17
- TERMINATED, 17
- wait, 17, 21
- waitlist, 17, 21
- waitvec, 17, 21
- tasks
- pending, 19
- scheduling, 32
- sleeping, 20
- waiting, 21
- timer::
- constructor, 23
- destructor, 23
- reset, 23
- timers, 23
U
- underflow function, 94
- unsafe_ios, 80
- unsafe_iostream, 80
- unsafe_istream, 80
- unsafe_ostream, 80
- urand::
- constructor, 34
- draw, 34
- user-defined types, 85
W
- waiting for an object, 21
- whitespace, 60
- whitespace, skipping, 60
- WMODE, 28
- ws (manipulator), 61, 67
X
- xsgetn, 94
- xsputn function, 94
Z
- ZMODE, 28