NAME

ACE_Asynch_Result - An abstract class which adds information to the OVERLAPPED structure to make it more useful.

SYNOPSIS

#include <ace/Asynch_IO.h>

class ACE_Asynch_Result : protected OVERLAPPED { public: friend class ACE_Proactor; u_long bytes_transferred (void) const; const void *act (void) const; int success (void) const; const void *completion_key (void) const; u_long error (void) const; ACE_HANDLE event (void) const; u_long offset (void) const; u_long offset_high (void) const; ACE_Asynch_Result ( ACE_Handler &handler, const void* act, ACE_HANDLE event, u_long offset = 0, u_long offset_high = 0 ); virtual ~ACE_Asynch_Result (void); protected: virtual void complete ( u_long bytes_transferred, int success, const void *completion_key, u_long error = 0 ) = 0; ACE_Handler &handler_; const void *act_; u_long bytes_transferred_; int success_; const void *completion_key_; u_long error_; };

DESCRIPTION

This only works on Win32 platforms.

The implementation of ACE_Asynch_Transmit_File and ACE_Asynch_Accept are only supported if ACE_HAS_WINSOCK2 is defined or you are on WinNT 4.0 or higher

PUBLIC MEMBERS

friend class ACE_Proactor;

u_long bytes_transferred (void) const;

const void *act (void) const;

int success (void) const;

const void *completion_key (void) const;

u_long error (void) const;

ACE_HANDLE event (void) const;

u_long offset (void) const;

u_long offset_high (void) const;

ACE_Asynch_Result (
    ACE_Handler &handler,
    const void* act,
    ACE_HANDLE event,
    u_long offset = 0,
    u_long offset_high = 0
    );

virtual ~ACE_Asynch_Result (void);

PROTECTED MEMBERS

virtual void complete (
    u_long bytes_transferred,
    int success,
    const void *completion_key,
    u_long error = 0
    ) = 0;

ACE_Handler &handler_;

const void *act_;

u_long bytes_transferred_;

int success_;

const void *completion_key_;

u_long error_;

AUTHOR

Irfan Pyarali (irfan@cs.wustl.edu) Tim Harrison (harrison@cs.wustl.edu)

LIBRARY

ace