#include <Asynch_Queued_Message.h>
Inheritance diagram for TAO_Asynch_Queued_Message:
Public Member Functions | |
TAO_Asynch_Queued_Message (const ACE_Message_Block *contents, TAO_ORB_Core *oc, ACE_Allocator *alloc=0, int is_heap_allocated=0) | |
Constructor. | |
virtual | ~TAO_Asynch_Queued_Message (void) |
Destructor. | |
Implement the Template Methods from TAO_Queued_Message | |
virtual size_t | message_length (void) const |
Return the length of the message. | |
virtual int | all_data_sent (void) const |
Return 1 if all the data has been sent. | |
virtual void | fill_iov (int iovcnt_max, int &iovcnt, iovec iov[]) const |
Fill up an io vector using the connects of the message. | |
virtual void | bytes_transferred (size_t &byte_count) |
Update the internal state, data has been sent. | |
virtual TAO_Queued_Message * | clone (ACE_Allocator *alloc) |
virtual void | destroy (void) |
Reclaim resources. | |
Protected Member Functions | |
TAO_Asynch_Queued_Message (char *buf, TAO_ORB_Core *oc, size_t size, ACE_Allocator *alloc=0) | |
Constructor. | |
Private Attributes | |
const size_t | size_ |
The number of bytes in the buffer. | |
size_t | offset_ |
The offset in the buffer. | |
char * | buffer_ |
The buffer containing the complete message. |
|
Constructor.
|
|
Destructor.
|
|
Constructor.
|
|
Return 1 if all the data has been sent.
Implements TAO_Queued_Message. |
|
Update the internal state, data has been sent. After the TAO_Transport class completes a successful (or partially successful) I/O operation it must update the state of all the messages queued. This callback method is used by each message to update its state and determine if all the data has been sent already.
Implements TAO_Queued_Message. |
|
Implements TAO_Queued_Message. |
|
Reclaim resources. Reliable messages are allocated from the stack, thus they do not be deallocated. Asynchronous (SYNC_NONE) messages are allocated from the heap (or a pool), they need to be reclaimed explicitly. Implements TAO_Queued_Message. |
|
Fill up an io vector using the connects of the message. Different versions of this class represent the message using either a single buffer, or a message block. This method allows a derived class to fill up the contents of an io vector, the TAO_Transport class uses this method to group as many messages as possible in an iovector before sending them to the OS I/O subsystem.
Implements TAO_Queued_Message. |
|
Return the length of the message. If the message has been partially sent it returns the number of bytes that are still not sent. Implements TAO_Queued_Message. |
|
The buffer containing the complete message.
|
|
The offset in the buffer.
Data up to |
|
The number of bytes in the buffer.
|