TAO_RTEvent
2.0.8
|
#include <ECG_CDR_Message_Receiver.h>
Public Member Functions | |
Requests (void) | |
~Requests (void) | |
int | init (size_t size, size_t min_purge_count) |
Allocates and initializes <fragmented_requests_>. | |
TAO_ECG_UDP_Request_Entry ** | get_request (CORBA::ULong request_id) |
Private Member Functions | |
void | purge_requests (CORBA::ULong purge_first, CORBA::ULong purge_last) |
Requests & | operator= (const Requests &rhs) |
Requests (const Requests &rhs) | |
Private Attributes | |
TAO_ECG_UDP_Request_Entry ** | fragmented_requests_ |
size_t | size_ |
Size of <fragmented_requests_> array. | |
size_t | min_purge_count_ |
Minimum range shifting amount. | |
CORBA::ULong | id_range_low_ |
CORBA::ULong | id_range_high_ |
Once init() has been called: Invariant: id_range_high_- id_range_low_ == size_ - 1
TAO_ECG_CDR_Message_Receiver::Requests::Requests | ( | void | ) |
TAO_ECG_CDR_Message_Receiver::Requests::~Requests | ( | void | ) |
TAO_ECG_CDR_Message_Receiver::Requests::Requests | ( | const Requests & | rhs | ) | [private] |
TAO_ECG_UDP_Request_Entry ** TAO_ECG_CDR_Message_Receiver::Requests::get_request | ( | CORBA::ULong | request_id | ) |
Returns pointer to a <fragmented_requests_> element representing <request_id>. If <request_id> < <id_range_low> return 0. If <request_id> > <id_range_high>, shift the range so it includes <request_id>, purging incomplete requests as needed.
int TAO_ECG_CDR_Message_Receiver::Requests::init | ( | size_t | size, |
size_t | min_purge_count | ||
) |
Allocates and initializes <fragmented_requests_>.
void TAO_ECG_CDR_Message_Receiver::Requests::purge_requests | ( | CORBA::ULong | purge_first, |
CORBA::ULong | purge_last | ||
) | [private] |
Delete any outstanding requests with ids in the range [<purge_first>, <purge_last>] from <fragmented_requests> and and reset their slots.
Array, used in a circular fashion, that stores partially received requests (and info on which requests have been fully received and processed) for a range of request ids.
The range of request ids, currently represented in <fragmented_requests>.
The range of request ids, currently represented in <fragmented_requests>.
size_t TAO_ECG_CDR_Message_Receiver::Requests::min_purge_count_ [private] |
Minimum range shifting amount.
size_t TAO_ECG_CDR_Message_Receiver::Requests::size_ [private] |
Size of <fragmented_requests_> array.