ACE  6.1.7
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes
ACE_SPIPE Class Reference

Defines the member functions for the base class of the ACE_SPIPE abstraction. More...

#include <SPIPE.h>

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

List of all members.

Public Member Functions

int close (void)
 Close down the SPIPE without removing the rendezvous point.
int remove (void)
int get_local_addr (ACE_SPIPE_Addr &) const
 Return the local address of this endpoint.
int disable (int signum) const
void dump (void) const
 Dump the state of an object.
- Public Member Functions inherited from ACE_IPC_SAP
int control (int cmd, void *) const
 Interface for <ioctl>.
int enable (int value) const
ACE_HANDLE get_handle (void) const
 Get the underlying handle.
void set_handle (ACE_HANDLE handle)
 Set the underlying handle.

Public Attributes

 ACE_ALLOC_HOOK_DECLARE
 Declare the dynamic allocation hooks.
- Public Attributes inherited from ACE_IPC_SAP

Protected Member Functions

 ACE_SPIPE (void)
 Ensure that this class is an abstract base class.
- Protected Member Functions inherited from ACE_IPC_SAP
 ACE_IPC_SAP (void)
 Default constructor.
 ~ACE_IPC_SAP (void)
 Protected destructor.

Protected Attributes

ACE_SPIPE_Addr local_addr_
 Our local address.

Detailed Description

Defines the member functions for the base class of the ACE_SPIPE abstraction.

ACE_SPIPE was designed as a wrapper facade for STREAM pipes. On Windows, however, ACE_SPIPE is a wrapper for Named Pipes. Therefore, on Windows, it is better to use the ACE_Proactor or blocking operations in lieu of using the ACE_Reactor.

See also:
ACE_SPIPE_Acceptor for additional notes on use with ACE_Reactor on Windows.
Warning:
Windows: Works only on Windows NT 4 and higher.
Works on non-Windows platforms only when ACE_HAS_STREAM_PIPES is defined.

Constructor & Destructor Documentation

ACE_SPIPE::ACE_SPIPE ( void  )
protected

Ensure that this class is an abstract base class.


Member Function Documentation

int ACE_SPIPE::close ( void  )

Close down the SPIPE without removing the rendezvous point.

Closes the underlying pipe handle and sets this object's handle value to ACE_INVALID_HANDLE.

Returns:
0 for success; -1 for failure. If a failure occurs, further error information is available from ACE_OS::last_error().

Reimplemented in ACE_SPIPE_Acceptor, ACE_UPIPE_Acceptor, and ACE_UPIPE_Stream.

int ACE_SPIPE::disable ( int  signum) const
inline

Disable signal

  • signum.
    Note:
    This reimplements the inherited method from ACE_IPC_SAP. Since the signal actions do not make any sense on Windows, this method intercepts the call and NOPs it. On non-Windows, it is passed through to ACE_IPC_SAP::disable().

Reimplemented from ACE_IPC_SAP.

void ACE_SPIPE::dump ( void  ) const

Dump the state of an object.

Reimplemented from ACE_IPC_SAP.

Reimplemented in ACE_SPIPE_Stream, ACE_SPIPE_Acceptor, ACE_UPIPE_Stream, and ACE_UPIPE_Acceptor.

int ACE_SPIPE::get_local_addr ( ACE_SPIPE_Addr local_sap) const

Return the local address of this endpoint.

Returns the local address of the SPIPE's endpoint in

  • addr.
    Returns:
    0 for success; -1 for failure. If a failure occurs, further error information is available from ACE_OS::last_error().
int ACE_SPIPE::remove ( void  )

Close down the SPIPE and remove the rendezvous point from the file system.

Returns:
0 for success; -1 for failure. If a failure occurs, further error information is available from ACE_OS::last_error().

Reimplemented in ACE_SPIPE_Acceptor, and ACE_UPIPE_Acceptor.


Member Data Documentation

ACE_SPIPE::ACE_ALLOC_HOOK_DECLARE

Declare the dynamic allocation hooks.

Reimplemented from ACE_IPC_SAP.

Reimplemented in ACE_SPIPE_Stream, ACE_SPIPE_Acceptor, ACE_UPIPE_Stream, and ACE_UPIPE_Acceptor.

ACE_SPIPE_Addr ACE_SPIPE::local_addr_
protected

Our local address.


The documentation for this class was generated from the following files: