diff options
author | levine <levine@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 1996-10-21 21:41:34 +0000 |
---|---|---|
committer | levine <levine@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 1996-10-21 21:41:34 +0000 |
commit | a5fdebc5f6375078ec1763850a4ca23ec7fe6458 (patch) | |
tree | bcf0a25c3d45a209a6e3ac37b233a4812f29c732 /ace/DEV.h | |
download | ATCD-a5fdebc5f6375078ec1763850a4ca23ec7fe6458.tar.gz |
Initial revision
Diffstat (limited to 'ace/DEV.h')
-rw-r--r-- | ace/DEV.h | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/ace/DEV.h b/ace/DEV.h new file mode 100644 index 00000000000..4d4cdd0ace8 --- /dev/null +++ b/ace/DEV.h @@ -0,0 +1,71 @@ +/* -*- C++ -*- */ +// $Id$ + + +// ============================================================================ +// +// = LIBRARY +// ace +// +// = FILENAME +// DEV.h +// +// = AUTHOR +// Gerhard Lenzer +// +// ============================================================================ + +#if !defined (ACE_DEV_H) +#define ACE_DEV_H + +#include "ace/IO_SAP.h" +#include "ace/DEV_Addr.h" + +// The following is necessary since many C++ compilers don't support +// typedef'd types inside of classes used as formal template +// arguments... ;-(. Luckily, using the C++ preprocessor I can hide +// most of this nastiness! + +#if defined (ACE_HAS_TEMPLATE_TYPEDEFS) +#define ACE_DEV_CONNECTOR ACE_DEV_Connector +#define ACE_DEV_STREAM ACE_DEV_Stream +#else /* TEMPLATES are broken (must be a cfront-based compiler...) */ +#define ACE_DEV_CONNECTOR ACE_DEV_Connector, ACE_DEV_Addr +#define ACE_DEV_STREAM ACE_DEV_Stream, ACE_DEV_Addr +#endif /* ACE_TEMPLATE_TYPEDEFS */ + +class ACE_Export ACE_DEV : public ACE_IO_SAP + // = TITLE + // Defines the member functions for the base class of the + // ACE_DEV abstraction. +{ +public: + int close (void); + // Close down the DEVICE + + void dump (void) const; + // Dump the state of an object. + + ACE_ALLOC_HOOK_DECLARE; + // Declare the dynamic allocation hooks. + + // = The following two methods are no-ops to keep the + // <ACE_Connector> happy. + int get_local_addr (ACE_DEV_Addr &) const; + // Return the local endpoint address. + + int get_remote_addr (ACE_DEV_Addr &) const; + // Return the address of the remotely connected peer (if there is + // one). + +protected: + ACE_DEV (void); + // Ensure that this class is an abstract base class + + ACE_DEV_Addr addr_; + // Address of device we are connected to. +}; + +#include "ace/DEV.i" + +#endif /* ACE_DEV_H */ |