3 //=============================================================================
5 * @file LSOCK_Connector.h
7 * @author Doug Schmidt <d.schmidt@vanderbilt.edu>
9 //=============================================================================
11 #ifndef ACE_LOCAL_SOCK_CONNECTOR_H
12 #define ACE_LOCAL_SOCK_CONNECTOR_H
13 #include /**/ "ace/pre.h"
15 #include /**/ "ace/config-all.h"
17 #if !defined (ACE_LACKS_PRAGMA_ONCE)
19 #endif /* ACE_LACKS_PRAGMA_ONCE */
21 #if !defined (ACE_LACKS_UNIX_DOMAIN_SOCKETS)
23 #include "ace/SOCK_Connector.h"
24 #include "ace/LSOCK_Stream.h"
25 #include "ace/UNIX_Addr.h"
27 ACE_BEGIN_VERSIONED_NAMESPACE_DECL
30 * @class ACE_LSOCK_Connector
32 * @brief Defines the format and interface for the connector side of
33 * the ACE_LSOCK_Stream.
35 class ACE_Export ACE_LSOCK_Connector
: public ACE_SOCK_Connector
38 /// Default constructor.
39 ACE_LSOCK_Connector (void);
42 * Actively connect and produce a @a new_stream if things go well.
43 * All arguments are relayed to the ACE_SOCK_Connector constructor
45 * @see ACE_SOCK_Connector().
47 ACE_LSOCK_Connector (ACE_LSOCK_Stream
&new_stream
,
48 const ACE_UNIX_Addr
&remote_sap
,
49 ACE_Time_Value
*timeout
= 0,
50 const ACE_Addr
&local_sap
= ACE_Addr::sap_any
,
56 * Actively connect and produce a @a new_stream if things go well.
57 * The @c ACE_SOCK_Connector::connect() method is called to perform
58 * the actual connection attempt.
59 * @see ACE_SOCK_Connector::connect().
61 int connect (ACE_LSOCK_Stream
&new_stream
,
62 const ACE_UNIX_Addr
&remote_sap
,
63 ACE_Time_Value
*timeout
= 0,
64 const ACE_Addr
&local_sap
= ACE_Addr::sap_any
,
70 typedef ACE_UNIX_Addr PEER_ADDR
;
71 typedef ACE_LSOCK_Stream PEER_STREAM
;
73 /// Dump the state of an object.
74 void dump (void) const;
76 /// Declare the dynamic allocation hooks.
77 ACE_ALLOC_HOOK_DECLARE
;
80 ACE_END_VERSIONED_NAMESPACE_DECL
82 #if defined (__ACE_INLINE__)
83 #include "ace/LSOCK_Connector.inl"
84 #endif /* __ACE_INLINE__ */
86 #endif /* ACE_LACKS_UNIX_DOMAIN_SOCKETS */
87 #include /**/ "ace/post.h"
88 #endif /* ACE_LOCAL_SOCK_CONNECTOR_H */