Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

ACE_Pipe Class Reference

Provides a portable bidirectional "pipe" abstraction. More...

#include <Pipe.h>

List of all members.

Public Member Functions

 ACE_Pipe (void)
 Default constructor (does nothing...).
 ACE_Pipe (ACE_HANDLE handles[2])
 Open the pipe and initialize the handles.
 ACE_Pipe (ACE_HANDLE read, ACE_HANDLE write)
 Initialize the ACE_Pipe from the read and write handles.
 ~ACE_Pipe (void)
 Default dtor. It doesn't close the handles for you.
int open (ACE_HANDLE handles[2])
 Open the pipe and initialize the handles.
int open (int buffer_size=ACE_DEFAULT_MAX_SOCKET_BUFSIZ)
 Open the pipe, setting the buffer size to the maximum.
int close (void)
 Close down the pipe HANDLEs;.
ACE_HANDLE read_handle (void) const
ACE_HANDLE write_handle (void) const
void dump (void) const
 Dump the state of the object.

Private Attributes

ACE_HANDLE handles_ [2]


Detailed Description

Provides a portable bidirectional "pipe" abstraction.

This class is designed to work with select()-based demuxers, such as the ACE_Select_Reactor, which is why it uses sockets on Windows rather than Win32 pipes (which aren't select()'able).


Constructor & Destructor Documentation

ACE_Pipe::ACE_Pipe void   ) 
 

Default constructor (does nothing...).

ACE_Pipe::ACE_Pipe ACE_HANDLE  handles[2]  ) 
 

Open the pipe and initialize the handles.

ACE_Pipe::ACE_Pipe ACE_HANDLE  read,
ACE_HANDLE  write
 

Initialize the ACE_Pipe from the read and write handles.

ACE_INLINE ACE_Pipe::~ACE_Pipe void   ) 
 

Default dtor. It doesn't close the handles for you.


Member Function Documentation

int ACE_Pipe::close void   ) 
 

Close down the pipe HANDLEs;.

void ACE_Pipe::dump void   )  const
 

Dump the state of the object.

int ACE_Pipe::open int  buffer_size = ACE_DEFAULT_MAX_SOCKET_BUFSIZ  ) 
 

Open the pipe, setting the buffer size to the maximum.

int ACE_Pipe::open ACE_HANDLE  handles[2]  ) 
 

Open the pipe and initialize the handles.

ACE_INLINE ACE_HANDLE ACE_Pipe::read_handle void   )  const
 

This is the "read" side of the pipe. Note, however, that processes can also write to this handle as well since pipes are bi-directional.

ACE_INLINE ACE_HANDLE ACE_Pipe::write_handle void   )  const
 

This is the "write" side of the pipe. Note, however, that processes can also read to this handle as well since pipes are bi-directional.


Member Data Documentation

ACE_HANDLE ACE_Pipe::handles_[2] [private]
 


The documentation for this class was generated from the following files:
Generated on Sat Aug 6 03:03:33 2005 for ACE by  doxygen 1.3.9.1