ACE  6.1.0
Public Types | Public Member Functions | Public Attributes | Private Attributes | Friends
ACE_UPIPE_Stream Class Reference

Defines the method that transfer data on a UPIPE. More...

#include <UPIPE_Stream.h>

Inheritance diagram for ACE_UPIPE_Stream:
Inheritance graph
[legend]
Collaboration diagram for ACE_UPIPE_Stream:
Collaboration graph
[legend]

List of all members.

Public Types

typedef ACE_Stream< ACE_SYNCH > MT_Stream
typedef ACE_UPIPE_Addr PEER_ADDR

Public Member Functions

 ACE_UPIPE_Stream (void)
virtual ~ACE_UPIPE_Stream (void)
int close (void)
 Shut down the UPIPE and release resources.
ACE_HANDLE get_handle (void) const
 Return the underlying I/O handle.
int send (ACE_Message_Block *mb_p, ACE_Time_Value *timeout=0)
int recv (ACE_Message_Block *&mb_p, ACE_Time_Value *timeout=0)
ssize_t send (const char *buffer, size_t n, ACE_Time_Value *timeout=0)
ssize_t recv (char *buffer, size_t n, ACE_Time_Value *timeout=0)
ssize_t send_n (const char *buffer, size_t n, ACE_Time_Value *timeout=0)
ssize_t recv_n (char *buffer, size_t n, ACE_Time_Value *timeout=0)
int control (int cmd, void *val) const
 Perform control operations on the UPIPE_Stream.
int get_remote_addr (ACE_UPIPE_Addr &remote_sap) const
 Return the remote address we are connected to.
void dump (void) const
 Dump the state of an object.

Public Attributes

 ACE_ALLOC_HOOK_DECLARE
 Declare the dynamic allocation hooks.

Private Attributes

ACE_Message_Blockmb_last_
ACE_UPIPE_Addr remote_addr_
 Address of who we are connected to.
MT_Stream stream_
int reference_count_
 Keep track of whether the sender and receiver have both shutdown.

Friends

class ACE_UPIPE_Acceptor
class ACE_UPIPE_Connector

Detailed Description

Defines the method that transfer data on a UPIPE.


Member Typedef Documentation


Constructor & Destructor Documentation

ACE_UPIPE_Stream::ACE_UPIPE_Stream ( void  )
ACE_UPIPE_Stream::~ACE_UPIPE_Stream ( void  ) [virtual]

Member Function Documentation

int ACE_UPIPE_Stream::close ( void  )

Shut down the UPIPE and release resources.

Reimplemented from ACE_SPIPE.

int ACE_UPIPE_Stream::control ( int  cmd,
void *  val 
) const

Perform control operations on the UPIPE_Stream.

Reimplemented from ACE_IPC_SAP.

void ACE_UPIPE_Stream::dump ( void  ) const

Dump the state of an object.

Reimplemented from ACE_SPIPE.

ACE_HANDLE ACE_UPIPE_Stream::get_handle ( void  ) const [inline]

Return the underlying I/O handle.

Reimplemented from ACE_IPC_SAP.

int ACE_UPIPE_Stream::get_remote_addr ( ACE_UPIPE_Addr remote_sap) const

Return the remote address we are connected to.

int ACE_UPIPE_Stream::recv ( ACE_Message_Block *&  mb_p,
ACE_Time_Value timeout = 0 
)

Recv a message from the message queue. Returns -1 on error, else 0.

ssize_t ACE_UPIPE_Stream::recv ( char *  buffer,
size_t  n,
ACE_Time_Value timeout = 0 
)

Recv a buffer of upto n bytes from the message queue. Returns -1 on error, else number of bytes read.

ssize_t ACE_UPIPE_Stream::recv_n ( char *  buffer,
size_t  n,
ACE_Time_Value timeout = 0 
)

Recv a buffer of exactly n bytes from the message queue. Returns -1 on error, else the number of bytes read.

int ACE_UPIPE_Stream::send ( ACE_Message_Block mb_p,
ACE_Time_Value timeout = 0 
)

Send a message through the message queue. Returns -1 on error, else 0.

ssize_t ACE_UPIPE_Stream::send ( const char *  buffer,
size_t  n,
ACE_Time_Value timeout = 0 
)

Send a buffer of n bytes through the message queue. Returns -1 on error, else number of bytes sent.

ssize_t ACE_UPIPE_Stream::send_n ( const char *  buffer,
size_t  n,
ACE_Time_Value timeout = 0 
)

Send a buffer of exactly n bytes to the message queue. Returns -1 on error, else number of bytes written (which should == n).


Friends And Related Function Documentation

friend class ACE_UPIPE_Acceptor [friend]
friend class ACE_UPIPE_Connector [friend]

Member Data Documentation

Declare the dynamic allocation hooks.

Reimplemented from ACE_SPIPE.

To hold the last ACE_Message_Block read out of the stream. Thus allowing subsequent reads from one ACE_Message_Block

Keep track of whether the sender and receiver have both shutdown.

Address of who we are connected to.

Stream component used by the UPIPE_Acceptor and UPIPE_Connector to link together two UPIPE_Streams.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines