| 579 | } |
| 580 | |
| 581 | ACE_UINT64 |
| 582 | WriteDataContainer::get_unsent_data(SendStateDataSampleList& list) |
| 583 | { |
| 584 | DBG_ENTRY_LVL("WriteDataContainer","get_unsent_data",6); |
| 585 | // |
| 586 | // The samples in unsent_data are added to the local datawriter |
| 587 | // list and enqueued to the sending_data_ signifying they have |
| 588 | // been passed to the transport to send in a transaction |
| 589 | // |
| 590 | list = this->unsent_data_; |
| 591 | |
| 592 | // Increment send counter for this send operation |
| 593 | ++transaction_id_; |
| 594 | |
| 595 | // Mark all samples with current send counter |
| 596 | SendStateDataSampleList::iterator iter = list.begin(); |
| 597 | while (iter != list.end()) { |
| 598 | iter->set_transaction_id(this->transaction_id_); |
| 599 | ++iter; |
| 600 | } |
| 601 | |
| 602 | // |
| 603 | // The unsent_data_ already linked with the |
| 604 | // next_send_sample during enqueue. |
| 605 | // Append the unsent_data_ to current sending_data_ |
| 606 | // list. |
| 607 | sending_data_.enqueue_tail(list); |
| 608 | |
| 609 | // |
| 610 | // Clear the unsent data list. |
| 611 | // |
| 612 | this->unsent_data_.reset(); |
| 613 | |
| 614 | // |
| 615 | // Return the moved list. |
| 616 | // |
| 617 | return transaction_id_; |
| 618 | } |
| 619 | |
| 620 | SendStateDataSampleList |
| 621 | WriteDataContainer::get_resend_data() |