ACE
6.0.7
|
Standard task that acts as reader or writer at the head of an ACE_Stream. More...
#include <Stream_Modules.h>
Public Member Functions | |
ACE_Stream_Head (void) | |
Construction. | |
~ACE_Stream_Head (void) | |
Destruction. | |
virtual int | open (void *a=0) |
virtual int | close (u_long flags=0) |
virtual int | put (ACE_Message_Block *msg, ACE_Time_Value *=0) |
virtual int | svc (void) |
virtual int | init (int argc, ACE_TCHAR *argv[]) |
virtual int | info (ACE_TCHAR **info_string, size_t length) const |
virtual int | fini (void) |
void | dump (void) const |
Dump the state of an object. | |
Public Attributes | |
ACE_ALLOC_HOOK_DECLARE | |
Declare the dynamic allocation hooks. | |
Private Member Functions | |
int | control (ACE_Message_Block *) |
Performs canonical flushing at the ACE_Stream Head. | |
int | canonical_flush (ACE_Message_Block *) |
Standard task that acts as reader or writer at the head of an ACE_Stream.
A ACE_Message_Block sent to this task (via its put() hook) triggers actions depending on the block type and whether the task is acting as a reader or a writer. If the block is of type ACE_Message_Block::MB_IOCTL, the block's is assumed to contain (beginning at its rd_ptr()) an ACE_IO_Cntl_Msg object and is processed accordingly. This is usually used to set the task's message queue high water and/or low water marks.
When the block is not ACE_Message_Block::MB_IOCTL, processing depends on the ACE_Stream_Head's role in the module:
ACE_Stream_Head::ACE_Stream_Head | ( | void | ) |
Construction.
ACE_Stream_Head::~ACE_Stream_Head | ( | void | ) |
Destruction.
int ACE_Stream_Head::canonical_flush | ( | ACE_Message_Block * | mb | ) | [private] |
int ACE_Stream_Head::close | ( | u_long | flags = 0 | ) | [virtual] |
int ACE_Stream_Head::control | ( | ACE_Message_Block * | mb | ) | [private] |
Performs canonical flushing at the ACE_Stream Head.
void ACE_Stream_Head::dump | ( | void | ) | const |
Dump the state of an object.
Reimplemented from ACE_Task< ACE_SYNCH_USE >.
int ACE_Stream_Head::fini | ( | void | ) | [virtual] |
int ACE_Stream_Head::info | ( | ACE_TCHAR ** | info_string, |
size_t | length | ||
) | const [virtual] |
int ACE_Stream_Head::init | ( | int | argc, |
ACE_TCHAR * | argv[] | ||
) | [virtual] |
int ACE_Stream_Head::open | ( | void * | a = 0 | ) | [virtual] |
int ACE_Stream_Head::put | ( | ACE_Message_Block * | msg, |
ACE_Time_Value * | tv = 0 |
||
) | [virtual] |
int ACE_Stream_Head::svc | ( | void | ) | [virtual] |
Declare the dynamic allocation hooks.
Reimplemented from ACE_Task< ACE_SYNCH_USE >.