ACE  6.1.0
Public Member Functions | Public Attributes
ACE_LSOCK_CODgram Class Reference

Defines a fully specified (sometimes called "connected") UNIX-domain datagram abstraction. More...

#include <LSOCK_CODgram.h>

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

List of all members.

Public Member Functions

 ACE_LSOCK_CODgram (void)
 Default constructor; requires a call to open() prior to communication.
ACE_HANDLE get_handle (void) const
 Get underlying handle.
void set_handle (ACE_HANDLE)
 Set underlying handle.
void dump (void) const
 Dump the state of an object.
Initialization methods
 ACE_LSOCK_CODgram (const ACE_Addr &remote_sap, const ACE_Addr &local_sap=ACE_Addr::sap_any, int protocol_family=PF_UNIX, int protocol=0)
int open (const ACE_Addr &remote_sap, const ACE_Addr &local_sap=ACE_Addr::sap_any, int protocol_family=PF_UNIX, int protocol=0)

Public Attributes

 ACE_ALLOC_HOOK_DECLARE
 Declare the dynamic allocation hooks.

Detailed Description

Defines a fully specified (sometimes called "connected") UNIX-domain datagram abstraction.

ACE_LSOCK_CODgram provides a way to use a UNIX-domain datagram socket in a situation where the local and peer addresses are fully known in advance. The "connection-oriented" part of "CODgram" is a misnomer. There is no connection used on this type of socket. It merely specifies that both endpoint addresses are known in advance of use. Furthermore, this class is more suited for use cases where a local endpoint wishes to communicate with a single, known peer and may or may not have a specified local address.

If your use case requires receiving datagrams from multiple peers without previously known addresses, consider using ACE_LSOCK_Dgram instead.


Constructor & Destructor Documentation

ACE_LSOCK_CODgram::ACE_LSOCK_CODgram ( void  ) [inline]

Default constructor; requires a call to open() prior to communication.

ACE_LSOCK_CODgram::ACE_LSOCK_CODgram ( const ACE_Addr remote_sap,
const ACE_Addr local_sap = ACE_Addr::sap_any,
int  protocol_family = PF_UNIX,
int  protocol = 0 
)

Initialize a fully-specified datagram socket.

Parameters:
remote_sapRemote/peer address. This should be an ACE_UNIX_Addr object. It specifies where all sent datagrams will be sent to.
local_sapLocal address. The local address to receive datagrams at. If not specified, an unused address is selected. If specified, should be an ACE_UNIX_Addr object.
See also:
ACE_UNIX_Addr

Member Function Documentation

void ACE_LSOCK_CODgram::dump ( void  ) const

Dump the state of an object.

Reimplemented from ACE_LSOCK.

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

Get underlying handle.

Reimplemented from ACE_LSOCK.

int ACE_LSOCK_CODgram::open ( const ACE_Addr remote_sap,
const ACE_Addr local_sap = ACE_Addr::sap_any,
int  protocol_family = PF_UNIX,
int  protocol = 0 
)

Initialize a fully-specified datagram socket.

Return values:
0if no error.
-1on error; check errno for an error reason.
void ACE_LSOCK_CODgram::set_handle ( ACE_HANDLE  h) [inline]

Set underlying handle.

Reimplemented from ACE_LSOCK.


Member Data Documentation

Declare the dynamic allocation hooks.

Reimplemented from ACE_LSOCK.


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