#include <POSIX_Asynch_IO.h>
Inheritance diagram for ACE_POSIX_Asynch_Write_Stream_Result:


Public Member Functions | |
| size_t | bytes_to_write (void) const | 
| ACE_Message_Block & | message_block (void) const | 
| Message block that contains the data to be written.   | |
| ACE_HANDLE | handle (void) const | 
| I/O handle used for writing.   | |
Protected Member Functions | |
| ACE_POSIX_Asynch_Write_Stream_Result (const ACE_Handler::Proxy_Ptr &handler_proxy, ACE_HANDLE handle, ACE_Message_Block &message_block, size_t bytes_to_write, const void *act, ACE_HANDLE event, int priority, int signal_number) | |
| virtual void | complete (size_t bytes_transferred, int success, const void *completion_key, u_long error) | 
| ACE_Proactor will call this method when the write completes.   | |
| virtual | ~ACE_POSIX_Asynch_Write_Stream_Result (void) | 
| Destructor.   | |
Protected Attributes | |
| ACE_Message_Block & | message_block_ | 
| Message block that contains the data to be written.   | |
Friends | |
| class | ACE_POSIX_Asynch_Write_Stream | 
| Factory classes will have special privilages.   | |
| class | ACE_POSIX_Proactor | 
| The Proactor constructs the Result class for faking results.   | |
This class has all the information necessary for the to uniquiely identify the completion of the asynchronous write.
Definition at line 316 of file POSIX_Asynch_IO.h.
      
  | 
  ||||||||||||||||||||||||||||||||||||
| 
 Constructor is protected since creation is limited to ACE_Asynch_Write_Stream factory. Definition at line 352 of file POSIX_Asynch_IO.cpp. References ACE_Handler::Proxy_Ptr. 
 00360 : ACE_POSIX_Asynch_Result 00361 (handler_proxy, act, event, 0, 0, priority, signal_number), 00362 message_block_ (message_block) 00363 { 00364 this->aio_fildes = handle; 00365 this->aio_buf = message_block.rd_ptr (); 00366 this->aio_nbytes = bytes_to_write; 00367 }  | 
  
      
  | 
  
| 
 Destructor. 
 Definition at line 396 of file POSIX_Asynch_IO.cpp. 
 00397 {
00398 }
 | 
  
      
  | 
  
| 
 The number of bytes which were requested at the start of the asynchronous write. Implements ACE_Asynch_Write_Stream_Result_Impl. Definition at line 334 of file POSIX_Asynch_IO.cpp. 
 00335 {
00336   return this->aio_nbytes;
00337 }
 | 
  
      
  | 
  ||||||||||||||||||||
| 
 ACE_Proactor will call this method when the write completes. 
 Implements ACE_Asynch_Result_Impl. Reimplemented in ACE_POSIX_Asynch_Write_File_Result. Definition at line 370 of file POSIX_Asynch_IO.cpp. References ACE_Refcounted_Auto_Ptr< X, ACE_LOCK >::get(), ACE_Handler::handle_write_stream(), and ACE_Message_Block::rd_ptr(). 
 00374 {
00375   // Get all the data copied.
00376   this->bytes_transferred_ = bytes_transferred;
00377   this->success_ = success;
00378   this->completion_key_ = completion_key;
00379   this->error_ = error;
00380 
00381   // <errno> is available in the aiocb.
00382   ACE_UNUSED_ARG (error);
00383 
00384   // Appropriately move the pointers in the message block.
00385   this->message_block_.rd_ptr (bytes_transferred);
00386 
00387   // Create the interface result class.
00388   ACE_Asynch_Write_Stream::Result result (this);
00389 
00390   // Call the application handler.
00391   ACE_Handler *handler = this->handler_proxy_.get ()->handler ();
00392   if (handler != 0)
00393     handler->handle_write_stream (result);
00394 }
 | 
  
      
  | 
  
| 
 I/O handle used for writing. 
 Implements ACE_Asynch_Write_Stream_Result_Impl. Definition at line 346 of file POSIX_Asynch_IO.cpp. 
 00347 {
00348   return this->aio_fildes;
00349 }
 | 
  
      
  | 
  
| 
 Message block that contains the data to be written. 
 Implements ACE_Asynch_Write_Stream_Result_Impl. Definition at line 340 of file POSIX_Asynch_IO.cpp. 
 00341 {
00342   return this->message_block_;
00343 }
 | 
  
      
  | 
  
| 
 Factory classes will have special privilages. 
 Definition at line 320 of file POSIX_Asynch_IO.h.  | 
  
      
  | 
  
| 
 The Proactor constructs the Result class for faking results. 
 Reimplemented in ACE_POSIX_Asynch_Write_File_Result. Definition at line 323 of file POSIX_Asynch_IO.h.  | 
  
      
  | 
  
| 
 Message block that contains the data to be written. 
 Definition at line 363 of file POSIX_Asynch_IO.h.  | 
  
 
1.3.6