Abstract base class for the all the classes that provide concrete implementations for ACE_Asynch_Result.
class ACE_Asynch_Result_Impl {
public:virtual ~ACE_Asynch_Result_Impl (void);virtual u_long bytes_transferred (void) const = 0;virtual const void *act (void) const = 0;virtual int success (void) const = 0;virtual const void *completion_key (void) const = 0;virtual u_long error (void) const = 0;virtual ACE_HANDLE event (void) const = 0;virtual u_long offset (void) const = 0;virtual u_long offset_high (void) const = 0;virtual int priority (void) const = 0;virtual int signal_number (void) const = 0;virtual void complete ( u_long bytes_transferred, int success, const void *completion_key, u_long error = 0 ) = 0;virtual int post_completion (ACE_Proactor_Impl *proactor) = 0;protected:ACE_Asynch_Result_Impl (void);};
This class contains asbtract base classes for all the concrete implementation classes for the various asynchronous operations that are used with the Praoctor.
virtual ~ACE_Asynch_Result_Impl (void);
virtual u_long bytes_transferred (void) const = 0;
virtual const void *act (void) const = 0;
virtual int success (void) const = 0;
virtual const void *completion_key (void) const = 0;
virtual u_long error (void) const = 0;
virtual ACE_HANDLE event (void) const = 0;
virtual u_long offset (void) const = 0;
virtual u_long offset_high (void) const = 0;
virtual int priority (void) const = 0;
virtual int signal_number (void) const = 0;
signal_number ranges from SIGRTMIN to SIGRTMAX. By
default, SIGRTMIN is used to issue aio_ calls. This is a no-op
on non-POSIX4 systems and returns 0.
virtual void complete (
u_long bytes_transferred,
int success,
const void *completion_key,
u_long error = 0
) = 0;
virtual int post_completion (ACE_Proactor_Impl *proactor) = 0;
this to the Proactor's completion port.
ACE_Asynch_Result_Impl (void);
Irfan Pyarali (irfan@cs.wustl.edu),
Tim Harrison (harrison@cs.wustl.edu) and
Alexander Babu Arulanthu alex@cs.wustl.edu
ace