summaryrefslogtreecommitdiff
path: root/ace/MEM_IO.h
diff options
context:
space:
mode:
Diffstat (limited to 'ace/MEM_IO.h')
-rw-r--r--ace/MEM_IO.h161
1 files changed, 0 insertions, 161 deletions
diff --git a/ace/MEM_IO.h b/ace/MEM_IO.h
deleted file mode 100644
index 00c567f7ac3..00000000000
--- a/ace/MEM_IO.h
+++ /dev/null
@@ -1,161 +0,0 @@
-/* -*- C++ -*- */
-// $Id$
-
-// ============================================================================
-//
-// = LIBRARY
-// ace
-//
-// = FILENAME
-// MEM_IO.h
-//
-// = AUTHOR
-// Nanbor Wang <nanbor@cs.wustl.edu>
-//
-// ============================================================================
-
-#ifndef ACE_MEM_IO_H
-#define ACE_MEM_IO_H
-
-#include "ace/SOCK.h"
-#include "ace/MEM_SAP.h"
-#include "ace/Memory_Pool.h"
-#include "ace/Message_Block.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-class ACE_Export ACE_MEM_IO : public ACE_SOCK, public ACE_MEM_SAP
-{
- // = TITLE
- // Defines the methods for the ACE shared memeory wrapper I/O
- // routines (e.g., send/recv).
- //
- // The shared memory transport uses ACE_SOCK_* class to
- // implement the signaling mechanism so we can easily use the
- // new mechanism with the Reactor pattern (which uses select
- // under the hood.)
- //
- // ACE_MEM_Acceptor and ACE_MEM_Connector are used to establish
- // connections. When a connection is established,
- // ACE_MEM_Acceptor creates the MMAP file for data exchange and
- // sends the location of the file (complete path name) to
- // ACE_MEM_Connector thru the socket. ACE_MEM_Connector then
- // reads the location of the file off the socket and opens up
- // the same MMAP file. ACE_MEM_Stream at each side then
- // contains a reference to the ACE_Mallo object using the same
- // MMAP file.
- //
- // When sending information using methods provided in this
- // class, ACE_MEM_IO requests a chunk of memory from the
- // MALLOC_TYPE object, copy the data into the shared memory and
- // send the memory offset (from the start of the ACE_Malloc)
- // across the socket. This action also servers as a signal to
- // the other end. The receiving side then reverses the
- // procedures and copies the information into user buffer.
-public:
- // = Initialization and termination methods.
- ACE_MEM_IO (void);
- // Constructor.
-
- ~ACE_MEM_IO (void);
- // Destructor.
-
- ssize_t send (const void *buf,
- size_t n,
- int flags) ;
- // Send an <n> byte buffer to the other process using shm_malloc_
- // connected thru the socket.
-
- ssize_t recv (void *buf,
- size_t n,
- int flags) ;
- // Recv an <n> byte buffer from the shm_malloc_ thru connected socket.
-
- ssize_t send (const void *buf,
- size_t n) ;
- // Send an <n> byte buffer to the other process using shm_malloc_
- // connected thru the socket.
-
- ssize_t recv (void *buf,
- size_t n) ;
- // Recv an <n> byte buffer from the shm_malloc_ thru connected socket.
-
- ssize_t send (const void *buf,
- size_t n,
- int flags,
- const ACE_Time_Value *timeout);
- // Wait to to <timeout> amount of time to send up to <n> bytes into
- // <buf> from <handle> (uses the <send> call). If <send> times out
- // a -1 is returned with <errno == ETIME>. If it succeeds the
- // number of bytes sent is returned.
-
- ssize_t recv (void *buf,
- size_t n,
- int flags,
- const ACE_Time_Value *timeout);
- // Wait up to <timeout> amount of time to receive up to <n> bytes
- // into <buf> from <handle> (uses the <recv> call). If <recv> times
- // out a -1 is returned with <errno == ETIME>. If it succeeds the
- // number of bytes received is returned.
-
- ssize_t send (const void *buf,
- size_t n,
- const ACE_Time_Value *timeout);
- // Wait to to <timeout> amount of time to send up to <n> bytes into
- // <buf> from <handle> (uses the <send> call). If <send> times out
- // a -1 is returned with <errno == ETIME>. If it succeeds the
- // number of bytes sent is returned.
-
- ssize_t recv (void *buf,
- size_t n,
- const ACE_Time_Value *timeout);
- // Wait up to <timeout> amount of time to receive up to <n> bytes
- // into <buf> from <handle> (uses the <recv> call). If <recv> times
- // out a -1 is returned with <errno == ETIME>. If it succeeds the
- // number of bytes received is returned.
-
- ssize_t send (const ACE_Message_Block *message_block,
- const ACE_Time_Value *timeout);
- // Wait to to <timeout> amount of time to send the <message_block>.
- // If <send> times out a -1 is returned with <errno == ETIME>. If
- // it succeeds the number of bytes sent is returned.
-
- void dump (void) const;
- // Dump the state of an object.
-
- ACE_ALLOC_HOOK_DECLARE;
- // Declare the dynamic allocation hooks.
-
- /* int get_local_port (u_short &) const;
- // Return the local endpoint port number. Returns 0 if successful,
- // else -1.
-
- int get_remote_port (u_short &) const;
- // Return the port number of the remotely connected peer (if there
- // is one). Returns 0 if successful, else -1.
- */
-
-protected:
- ssize_t fetch_recv_buf (int flags, const ACE_Time_Value *timeout = 0);
- // Fetch location of next available data into <recv_buffer_>.
- // As this operation read the address of the data off the socket
- // using ACE::recv, <timeout> only applies to ACE::recv.
-
-private:
- void *recv_buffer_;
- // Internal pointer for support recv/send.
-
- ssize_t buf_size_;
- // Record the current total buffer size of <recv_buffer_>.
-
- ssize_t cur_offset_;
- // Record the current read pointer location in <recv_buffer_>.
-};
-
-#if !defined (ACE_LACKS_INLINE_FUNCTIONS)
-#include "ace/MEM_IO.i"
-#endif /* ACE_LACKS_INLINE_FUNCTIONS */
-
-#endif /* ACE_SOCK_IO_H */