This class is the primary abstraction for the ASX framework. It is moduled after System V Stream.
More...
|
| | ACE_Stream (void *arg=0, ACE_Module< ACE_SYNCH_USE, TIME_POLICY > *head=0, ACE_Module< ACE_SYNCH_USE, TIME_POLICY > *tail=0) |
| |
| virtual int | open (void *arg, ACE_Module< ACE_SYNCH_USE, TIME_POLICY > *head=0, ACE_Module< ACE_SYNCH_USE, TIME_POLICY > *tail=0) |
| |
| virtual int | close (int flags=M_DELETE) |
| | Close down the stream and release all the resources.
|
| |
| virtual | ~ACE_Stream () |
| | Close down the stream and release all the resources.
|
| |
| virtual int | push (ACE_Module< ACE_SYNCH_USE, TIME_POLICY > *mod) |
| |
| virtual int | pop (int flags=M_DELETE) |
| | Remove the mod right below the Stream head and close it down.
|
| |
| virtual int | top (ACE_Module< ACE_SYNCH_USE, TIME_POLICY > *&mod) |
| |
| virtual int | insert (const ACE_TCHAR *prev_name, ACE_Module< ACE_SYNCH_USE, TIME_POLICY > *mod) |
| | Insert a new module mod below the named module prev_name.
|
| |
| virtual int | replace (const ACE_TCHAR *replace_name, ACE_Module< ACE_SYNCH_USE, TIME_POLICY > *mod, int flags=M_DELETE) |
| | Replace the named module replace_name with a new module mod.
|
| |
| virtual int | remove (const ACE_TCHAR *mod, int flags=M_DELETE) |
| |
| virtual ACE_Module< ACE_SYNCH_USE, TIME_POLICY > * | head () |
| | Return current stream head.
|
| |
| virtual ACE_Module< ACE_SYNCH_USE, TIME_POLICY > * | tail () |
| | Return current stream tail.
|
| |
| virtual ACE_Module< ACE_SYNCH_USE, TIME_POLICY > * | find (const ACE_TCHAR *mod) |
| | Find a particular ACE_Module.
|
| |
| virtual int | link (ACE_Stream< ACE_SYNCH_USE, TIME_POLICY > &) |
| | Create a pipe between two Streams.
|
| |
| virtual int | unlink () |
| | Remove a pipe formed between two Streams.
|
| |
| virtual int | put (ACE_Message_Block *mb, ACE_Time_Value *timeout=0) |
| |
| virtual int | get (ACE_Message_Block *&mb, ACE_Time_Value *timeout=0) |
| |
| virtual int | control (ACE_IO_Cntl_Msg::ACE_IO_Cntl_Cmds cmd, void *args) |
| | Send control message down the stream.
|
| |
| virtual int | wait () |
| | Synchronize with the final close of the stream.
|
| |
| virtual void | dump () const |
| | Dump the state of an object.
|
| |
This class is the primary abstraction for the ASX framework. It is moduled after System V Stream.
A Stream consists of a stack of ACE_Modules, each of which contains two ACE_Tasks. Even though the methods in this class are virtual, this class isn't really intended for subclassing unless you know what you are doing. In particular, the ACE_Stream destructor calls <close>, which won't be overridden properly unless you call it in a subclass destructor.