ACE_WIN32_Asynch_Result Class Reference

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

#include <WIN32_Asynch_IO.h>

Inheritance diagram for ACE_WIN32_Asynch_Result:
Inheritance graph
[legend]
Collaboration diagram for ACE_WIN32_Asynch_Result:
Collaboration graph
[legend]

List of all members.

Public Member Functions

size_t bytes_transferred (void) const
 Number of bytes transferred by the operation.
const void * act (void) const
 ACT associated with the operation.
int success (void) const
 Did the operation succeed?
const void * completion_key (void) const
u_long error (void) const
 Error value if the operation fail.
ACE_HANDLE event (void) const
 Event associated with the OVERLAPPED structure.
u_long offset (void) const
 This really make sense only when doing file I/O.
u_long offset_high (void) const
 Offset_high associated with the OVERLAPPED structure.
int priority (void) const
int signal_number (void) const
 Returns 0.
int post_completion (ACE_Proactor_Impl *proactor)
 Post this to the Proactor's completion port.
virtual ~ACE_WIN32_Asynch_Result (void)
 Destructor.
void set_error (u_long errcode)
 Simulate error value to use in the post_completion ().
void set_bytes_transferred (size_t nbytes)
 Simulate value to use in the post_completion ().

Protected Member Functions

 ACE_WIN32_Asynch_Result (const ACE_Handler::Proxy_Ptr &handler_proxy, const void *act, ACE_HANDLE event, u_long offset, u_long offset_high, int priority, int signal_number=0)
 Constructor.

Protected Attributes

ACE_Handler::Proxy_Ptr handler_proxy_
 Proxy for the ACE_Handler that will be called back.
const void * act_
 ACT for this operation.
size_t bytes_transferred_
 Bytes transferred by this operation.
int success_
 Success indicator.
const void * completion_key_
 ACT associated with handle.
u_long error_
 Error if operation failed.

Friends

class ACE_WIN32_Asynch_Accept
 Factory class has special permissions.
class ACE_WIN32_Proactor
 Proactor class has special permission.

Detailed Description

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

An abstract base class from which you can obtain some basic information like the number of bytes transferred, the ACT associated with the asynchronous operation, indication of success or failure, etc. Subclasses may want to store more information that is particular to the asynchronous operation it represents.


Constructor & Destructor Documentation

virtual ACE_WIN32_Asynch_Result::~ACE_WIN32_Asynch_Result ( void   )  [virtual]

Destructor.

ACE_WIN32_Asynch_Result::ACE_WIN32_Asynch_Result ( const ACE_Handler::Proxy_Ptr handler_proxy,
const void *  act,
ACE_HANDLE  event,
u_long  offset,
u_long  offset_high,
int  priority,
int  signal_number = 0 
) [protected]

Constructor.


Member Function Documentation

const void* ACE_WIN32_Asynch_Result::act ( void   )  const [virtual]
size_t ACE_WIN32_Asynch_Result::bytes_transferred ( void   )  const [virtual]
const void* ACE_WIN32_Asynch_Result::completion_key ( void   )  const [virtual]

This returns the ACT associated with the handle when it was registered with the I/O completion port. This ACT is not the same as the ACT associated with the asynchronous operation.

Implements ACE_Asynch_Result_Impl.

Reimplemented in ACE_WIN32_Asynch_Read_Stream_Result, ACE_WIN32_Asynch_Write_Stream_Result, ACE_WIN32_Asynch_Read_File_Result, ACE_WIN32_Asynch_Write_File_Result, ACE_WIN32_Asynch_Accept_Result, ACE_WIN32_Asynch_Connect_Result, ACE_WIN32_Asynch_Transmit_File_Result, ACE_WIN32_Asynch_Read_Dgram_Result, and ACE_WIN32_Asynch_Write_Dgram_Result.

u_long ACE_WIN32_Asynch_Result::error ( void   )  const [virtual]
ACE_HANDLE ACE_WIN32_Asynch_Result::event ( void   )  const [virtual]
u_long ACE_WIN32_Asynch_Result::offset ( void   )  const [virtual]
u_long ACE_WIN32_Asynch_Result::offset_high ( void   )  const [virtual]
int ACE_WIN32_Asynch_Result::post_completion ( ACE_Proactor_Impl proactor  )  [virtual]
int ACE_WIN32_Asynch_Result::priority ( void   )  const [virtual]
void ACE_WIN32_Asynch_Result::set_bytes_transferred ( size_t  nbytes  ) 

Simulate value to use in the post_completion ().

void ACE_WIN32_Asynch_Result::set_error ( u_long  errcode  ) 

Simulate error value to use in the post_completion ().

int ACE_WIN32_Asynch_Result::signal_number ( void   )  const [virtual]
int ACE_WIN32_Asynch_Result::success ( void   )  const [virtual]

Friends And Related Function Documentation

friend class ACE_WIN32_Asynch_Accept [friend]

Factory class has special permissions.

Reimplemented in ACE_WIN32_Asynch_Accept_Result.

friend class ACE_WIN32_Proactor [friend]

Member Data Documentation

const void* ACE_WIN32_Asynch_Result::act_ [protected]

ACT for this operation.

Bytes transferred by this operation.

ACT associated with handle.

u_long ACE_WIN32_Asynch_Result::error_ [protected]

Error if operation failed.

Proxy for the ACE_Handler that will be called back.

Success indicator.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on Mon Nov 30 00:54:39 2009 for ACE by  doxygen 1.6.1