ACE  6.3.4
Public Member Functions | Protected Member Functions | List of all members
ACE_Asynch_Result_Impl Class Referenceabstract

Abstract base class for the all the classes that provide concrete implementations for ACE_Asynch_Result. More...

#include <Asynch_IO_Impl.h>

Inheritance diagram for ACE_Asynch_Result_Impl:
Inheritance graph
[legend]

Public Member Functions

virtual ~ACE_Asynch_Result_Impl (void)
 
virtual size_t bytes_transferred (void) const =0
 Number of bytes transferred by the operation. More...
 
virtual const void * act (void) const =0
 ACT associated with the operation. More...
 
virtual int success (void) const =0
 Did the operation succeed? More...
 
virtual const void * completion_key (void) const =0
 
virtual u_long error (void) const =0
 Error value if the operation fail. More...
 
virtual ACE_HANDLE event (void) const =0
 Event associated with the OVERLAPPED structure. More...
 
virtual u_long offset (void) const =0
 This really make sense only when doing file I/O. More...
 
virtual u_long offset_high (void) const =0
 
virtual int priority (void) const =0
 Priority of the operation. More...
 
virtual int signal_number (void) const =0
 
virtual void complete (size_t bytes_transferred, int success, const void *completion_key, u_long error=0)=0
 This is called when the asynchronous operation completes. More...
 
virtual int post_completion (ACE_Proactor_Impl *proactor)=0
 Post this to the Proactor's completion port. More...
 

Protected Member Functions

 ACE_Asynch_Result_Impl (void)
 Do-nothing constructor. More...
 

Detailed Description

Abstract base class for the all the classes that provide concrete implementations for ACE_Asynch_Result.

Constructor & Destructor Documentation

ACE_Asynch_Result_Impl::~ACE_Asynch_Result_Impl ( void  )
virtual
ACE_Asynch_Result_Impl::ACE_Asynch_Result_Impl ( void  )
inlineprotected

Do-nothing constructor.

Member Function Documentation

virtual const void* ACE_Asynch_Result_Impl::act ( void  ) const
pure virtual

ACT associated with the operation.

Implemented in ACE_POSIX_Asynch_Result.

virtual size_t ACE_Asynch_Result_Impl::bytes_transferred ( void  ) const
pure virtual

Number of bytes transferred by the operation.

Implemented in ACE_POSIX_Asynch_Result.

virtual void ACE_Asynch_Result_Impl::complete ( size_t  bytes_transferred,
int  success,
const void *  completion_key,
u_long  error = 0 
)
pure virtual
virtual const void* ACE_Asynch_Result_Impl::completion_key ( void  ) const
pure virtual

This ACT is not the same as the ACT associated with the asynchronous operation.

Implemented in ACE_POSIX_Asynch_Result.

virtual u_long ACE_Asynch_Result_Impl::error ( void  ) const
pure virtual

Error value if the operation fail.

Implemented in ACE_POSIX_Asynch_Result.

virtual ACE_HANDLE ACE_Asynch_Result_Impl::event ( void  ) const
pure virtual

Event associated with the OVERLAPPED structure.

Implemented in ACE_POSIX_Asynch_Result.

virtual u_long ACE_Asynch_Result_Impl::offset ( void  ) const
pure virtual

This really make sense only when doing file I/O.

Implemented in ACE_POSIX_Asynch_Result.

virtual u_long ACE_Asynch_Result_Impl::offset_high ( void  ) const
pure virtual

Implemented in ACE_POSIX_Asynch_Result.

virtual int ACE_Asynch_Result_Impl::post_completion ( ACE_Proactor_Impl proactor)
pure virtual

Post this to the Proactor's completion port.

Implemented in ACE_POSIX_Asynch_Result.

virtual int ACE_Asynch_Result_Impl::priority ( void  ) const
pure virtual

Priority of the operation.

Implemented in ACE_POSIX_Asynch_Result.

virtual int ACE_Asynch_Result_Impl::signal_number ( void  ) const
pure virtual

POSIX4 real-time signal number to be used for the operation. 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.

Implemented in ACE_POSIX_Asynch_Result.

virtual int ACE_Asynch_Result_Impl::success ( void  ) const
pure virtual

Did the operation succeed?

Implemented in ACE_POSIX_Asynch_Result.


The documentation for this class was generated from the following files: