#include <RMCast_Partial_Message.h>
Collaboration diagram for ACE_RMCast_Partial_Message:
Public Methods | |
ACE_RMCast_Partial_Message (ACE_UINT32 message_size) | |
Constructor, reserve enough memory for the complete message. | |
~ACE_RMCast_Partial_Message (void) | |
Destructor. | |
int | fragment_received (ACE_UINT32 message_size, ACE_UINT32 offset, ACE_Message_Block *mb) |
Process a fragment. | |
int | is_complete (void) const |
Return 1 if the message is complete. | |
ACE_Message_Block * | message_body (void) |
Private Methods | |
int | insert_hole (size_t i, ACE_UINT32 start, ACE_UINT32 end) |
Insert a new hole into the list. | |
int | remove_hole (size_t i) |
Remove a hole from the list. | |
Private Attributes | |
ACE_Message_Block | message_body_ |
Maintain the message storage. | |
Hole * | hole_list_ |
size_t | max_hole_count_ |
size_t | hole_count_ |
|
Constructor, reserve enough memory for the complete message.
|
|
Destructor.
|
|
Process a fragment. A fragment starting at <offset> has been received, copy the fragment contents and update the list of holes. |
|
Insert a new hole into the list. The class keeps an array to represent the missing portions of the message. This method inserts a new hole, i.e. a new element in the array at index . The <start> and <end> arguments represent the offsets of the missing portion of the message. |
|
Return 1 if the message is complete.
|
|
Return the body of the message, the memory is *not* owned by the caller |
|
Remove a hole from the list.
|
|
|
|
|
|
|
|
Maintain the message storage.
|