#include <wvmagiccircle.h>
Inheritance diagram for WvMagicCircle:
Public Member Functions | |
| WvMagicCircle (size_t size) | |
| Creates a shared memory circular queue. | |
| size_t | used () |
| size_t | left () |
| size_t | put (const void *data, size_t len) |
| size_t | get (void *data, size_t len) |
| size_t | skip (size_t len) |
| virtual bool | isok () const |
| By default, returns true if geterr() == 0. | |
| virtual int | geterr () const |
| If isok() is false, return the system error number corresponding to the error, -1 for a special error string (which you can obtain with errstr()) or 0 on end of file. | |
| virtual WvString | errstr () const |
| virtual void | seterr (int _errnum) |
| Set the errnum variable -- we have an error. | |
| void | seterr (WvStringParm specialerr) |
| void | seterr (WVSTRING_FORMAT_DECL) |
| void | seterr (const WvErrorBase &err) |
| void | noerr () |
| Reset our error state - there's no error condition anymore. | |
Protected Attributes | |
| WvShmZone | shm |
| volatile int & | head |
| volatile int & | tail |
| int | size |
| char * | circle |
| int | errnum |
| WvString | errstring |
|
|
Creates a shared memory circular queue. "size" is the number of elements to store |
|
|
By default, returns true if geterr() == 0. Might be overridden so that isok() == false even though no error code has been specified. |
|
|
If isok() is false, return the system error number corresponding to the error, -1 for a special error string (which you can obtain with errstr()) or 0 on end of file. If isok() is true, returns an undefined number. Reimplemented in WvX509Mgr. |
|
|
Set the errnum variable -- we have an error. If called more than once, seterr() doesn't change the error code away from the previous one. That way, we remember the _original_ cause of our problems. Subclasses may want to override seterr(int) to shut themselves down (eg. WvStream::close()) when an error condition is set. Note that seterr(WvString) will call seterr(-1). |
1.4.2