Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Related Pages  

LSOCK_Connector.h

Go to the documentation of this file.
00001 /* -*- C++ -*- */
00002 
00003 //=============================================================================
00004 /**
00005  *  @file    LSOCK_Connector.h
00006  *
00007  *  $Id: LSOCK_Connector.h,v 1.1.1.4 2003/02/21 18:36:32 chad Exp $
00008  *
00009  *  @author Doug Schmidt <schmidt@cs.wustl.edu>
00010  */
00011 //=============================================================================
00012 
00013 #ifndef ACE_LOCAL_SOCK_CONNECTOR_H
00014 #define ACE_LOCAL_SOCK_CONNECTOR_H
00015 #include "ace/pre.h"
00016 
00017 #include "ace/config-all.h"
00018 
00019 #if !defined (ACE_LACKS_PRAGMA_ONCE)
00020 # pragma once
00021 #endif /* ACE_LACKS_PRAGMA_ONCE */
00022 
00023 #if !defined (ACE_LACKS_UNIX_DOMAIN_SOCKETS)
00024 
00025 #include "ace/SOCK_Connector.h"
00026 #include "ace/LSOCK_Stream.h"
00027 #include "ace/UNIX_Addr.h"
00028 
00029 /**
00030  * @class ACE_LSOCK_Connector
00031  *
00032  * @brief Defines the format and interface for the connector side of
00033  * the <ACE_LSOCK_Stream>.
00034  */
00035 class ACE_Export ACE_LSOCK_Connector : public ACE_SOCK_Connector
00036 {
00037 public:
00038   // = Initialization methods.
00039   /// Default constructor.
00040   ACE_LSOCK_Connector (void);
00041 
00042   /**
00043    * Actively connect and produce a <new_stream> if things go well.
00044    * All arguments are relayed to the ACE_SOCK_Connector constructor
00045    * for handling.
00046    * @see ACE_SOCK_Connector().
00047    */
00048   ACE_LSOCK_Connector (ACE_LSOCK_Stream &new_stream,
00049                        const ACE_UNIX_Addr &remote_sap,
00050                        ACE_Time_Value *timeout = 0,
00051                        const ACE_Addr &local_sap = ACE_Addr::sap_any,
00052                        int reuse_addr = 0,
00053                        int flags = 0,
00054                        int perms = 0);
00055 
00056   /**
00057    * Actively connect and produce a <new_stream> if things go well.
00058    * The @c ACE_SOCK_Connector::connect() method is called to perform
00059    * the actual connection attempt.
00060    * @see ACE_SOCK_Connector::connect().
00061    */
00062   int connect (ACE_LSOCK_Stream &new_stream,
00063                const ACE_UNIX_Addr &remote_sap,
00064                ACE_Time_Value *timeout = 0,
00065                const ACE_Addr &local_sap = ACE_Addr::sap_any,
00066                int reuse_addr = 0,
00067                int flags = 0,
00068                int perms = 0);
00069 
00070   // = Meta-type info
00071   typedef ACE_UNIX_Addr PEER_ADDR;
00072   typedef ACE_LSOCK_Stream PEER_STREAM;
00073 
00074   /// Dump the state of an object.
00075   void dump (void) const;
00076 
00077   /// Declare the dynamic allocation hooks.
00078   ACE_ALLOC_HOOK_DECLARE;
00079 };
00080 
00081 #if !defined (ACE_LACKS_INLINE_FUNCTIONS)
00082 #include "ace/LSOCK_Connector.i"
00083 #endif
00084 
00085 #endif /* ACE_LACKS_UNIX_DOMAIN_SOCKETS */
00086 #include "ace/post.h"
00087 #endif /* ACE_LOCAL_SOCK_CONNECTOR_H */

Generated on Mon Jun 16 11:20:02 2003 for ACE by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002