ACE  6.1.2
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Public Attributes | Private Attributes
ACE_FIFO Class Reference

Abstract base class for UNIX FIFOs. More...

#include <FIFO.h>

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

List of all members.

Public Member Functions

int open (const ACE_TCHAR *rendezvous, int flags, mode_t perms, LPSECURITY_ATTRIBUTES sa=0)
int close (void)
 Close down the ACE_FIFO without removing the rendezvous point.
int remove (void)
int get_local_addr (const ACE_TCHAR *&rendezvous) const
 Return the local address of this endpoint.
void dump (void) const
 Dump the state of an object.

Public Attributes

 ACE_ALLOC_HOOK_DECLARE
 Declare the dynamic allocation hooks.

Protected Member Functions

 ACE_FIFO (void)
 Default constructor.
 ACE_FIFO (const ACE_TCHAR *rendezvous, int flags, mode_t perms, LPSECURITY_ATTRIBUTES sa=0)

Private Attributes

ACE_TCHAR rendezvous_ [MAXPATHLEN+1]
 Rendezvous point in the file system.

Detailed Description

Abstract base class for UNIX FIFOs.

UNIX FIFOs are also known Named Pipes, which are totally unrelated to Windows Named Pipes. If you want to use a local IPC mechanism that will be portable to both UNIX and Windows, take a look at the ACE_Pipe or ACE_SPIPE_Stream classes.


Constructor & Destructor Documentation

ACE_FIFO::ACE_FIFO ( void  )
protected

Default constructor.

Protected constructors ensure this class cannot be used directly. User code must use ACE_FIFO_Send and/or ACE_FIFO_Recv.

ACE_FIFO::ACE_FIFO ( const ACE_TCHAR rendezvous,
int  flags,
mode_t  perms,
LPSECURITY_ATTRIBUTES  sa = 0 
)
protected

Open up the named pipe on the rendezvous in accordance with the flags.


Member Function Documentation

int ACE_FIFO::close ( void  )

Close down the ACE_FIFO without removing the rendezvous point.

Reimplemented in ACE_FIFO_Recv.

void ACE_FIFO::dump ( void  ) const

Dump the state of an object.

Reimplemented from ACE_IPC_SAP.

Reimplemented in ACE_FIFO_Recv_Msg, ACE_FIFO_Recv, ACE_FIFO_Send_Msg, and ACE_FIFO_Send.

int ACE_FIFO::get_local_addr ( const ACE_TCHAR *&  rendezvous) const
inline

Return the local address of this endpoint.

int ACE_FIFO::open ( const ACE_TCHAR rendezvous,
int  flags,
mode_t  perms,
LPSECURITY_ATTRIBUTES  sa = 0 
)

Open up the named pipe (FIFO) on the rendezvous point in accordance with the flags.

If flags contains O_CREAT open() will attempt to call mkfifo() to create the FIFO before opening it. In this case, this method will not fail simply because the fifo already exists.

Return values:
0for success
-1for error; errno contains the error code.

Reimplemented in ACE_FIFO_Send, and ACE_FIFO_Send_Msg.

int ACE_FIFO::remove ( void  )
inline

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


Member Data Documentation

Declare the dynamic allocation hooks.

Reimplemented from ACE_IPC_SAP.

Reimplemented in ACE_FIFO_Recv_Msg, ACE_FIFO_Recv, ACE_FIFO_Send_Msg, and ACE_FIFO_Send.

Rendezvous point in the file system.


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