OpenDDS::DCPS::DataSampleList Class Reference

#include <DataSampleList.h>

Collaboration diagram for OpenDDS::DCPS::DataSampleList:

Collaboration graph
[legend]
List of all members.

Public Types

typedef DataSampleListIterator iterator
 STL-style bidirectional iterator type.

Public Member Functions

 DataSampleList ()
 Default constructor clears the list.
void reset ()
 Reset to initial state.
void enqueue_tail_next_sample (DataSampleListElement *sample)
bool dequeue_head_next_sample (DataSampleListElement *&stale)
void enqueue_tail_next_send_sample (DataSampleListElement *sample)
bool dequeue_head_next_send_sample (DataSampleListElement *&stale)
void enqueue_tail_next_instance_sample (DataSampleListElement *sample)
bool dequeue_head_next_instance_sample (DataSampleListElement *&stale)
bool dequeue_next_sample (DataSampleListElement *stale)
bool dequeue_next_instance_sample (DataSampleListElement *stale)
bool dequeue_next_send_sample (DataSampleListElement *stale)
void enqueue_tail_next_send_sample (DataSampleList list)
iterator begin ()
 Return iterator to beginning of list.
iterator end ()
 Return iterator to end of list.

Public Attributes

DataSampleListElementhead_
 The first element of the list.
DataSampleListElementtail_
 The last element of the list.
ssize_t size_
 Number of elements in the list.

Detailed Description

Lists include a pointer to both the head and tail elements of the list. Cache the number of elements in the list so that we don't have to traverse the list to ind this information. For most lists that we manage, we append to the tail and remove from the head. There are

some lists where we remove from the middle, which are not handled by this list structure.


Member Typedef Documentation

typedef DataSampleListIterator OpenDDS::DCPS::DataSampleList::iterator

STL-style bidirectional iterator type.


Constructor & Destructor Documentation

ACE_INLINE OpenDDS::DCPS::DataSampleList::DataSampleList (  ) 

Default constructor clears the list.


Member Function Documentation

ACE_INLINE DataSampleList::iterator OpenDDS::DCPS::DataSampleList::begin (  ) 

Return iterator to beginning of list.

ACE_INLINE bool OpenDDS::DCPS::DataSampleList::dequeue_head_next_instance_sample ( DataSampleListElement *&  stale  ) 

This function assumes the list is the instance samples that is linked by the next_instance_sample_.

ACE_INLINE bool OpenDDS::DCPS::DataSampleList::dequeue_head_next_sample ( DataSampleListElement *&  stale  ) 

This function assumes the list is the sending_data, sent_data, unsent_data or released_data which is linked by the next_sample/previous_sample.

ACE_INLINE bool OpenDDS::DCPS::DataSampleList::dequeue_head_next_send_sample ( DataSampleListElement *&  stale  ) 

This function assumes the list is the sending_data or sent_data which is linked by the next_send_sample.

bool OpenDDS::DCPS::DataSampleList::dequeue_next_instance_sample ( DataSampleListElement stale  ) 

This function assumes that the list is a list that linked using next_instance_sample but the stale element's position is unknown.

bool OpenDDS::DCPS::DataSampleList::dequeue_next_sample ( DataSampleListElement stale  ) 

This function assumes that the list is a list that linked using next_sample/previous_sample but the stale element's position is unknown.

bool OpenDDS::DCPS::DataSampleList::dequeue_next_send_sample ( DataSampleListElement stale  ) 

This function assumes that the list is a list that linked using next_send_sample but the stale element's position is unknown.

ACE_INLINE DataSampleList::iterator OpenDDS::DCPS::DataSampleList::end (  ) 

Return iterator to end of list.

ACE_INLINE void OpenDDS::DCPS::DataSampleList::enqueue_tail_next_instance_sample ( DataSampleListElement sample  ) 

This function assumes the list is the instance samples that is linked by the next_instance_sample_.

ACE_INLINE void OpenDDS::DCPS::DataSampleList::enqueue_tail_next_sample ( DataSampleListElement sample  ) 

This function assumes the list is the sending_data, sent_data, unsent_data or released_data which is linked by the next_sample/previous_sample.

void OpenDDS::DCPS::DataSampleList::enqueue_tail_next_send_sample ( DataSampleList  list  ) 

This function assumes the appended list is a list linked with previous/next_sample_ and might be linked with next_send_sample_. If it's not linked with the next_send_sample_ then this function will make it linked before appending.

ACE_INLINE void OpenDDS::DCPS::DataSampleList::enqueue_tail_next_send_sample ( DataSampleListElement sample  ) 

This function assumes the list is the sending_data or sent_data which is linked by the next_send_sample.

ACE_INLINE void OpenDDS::DCPS::DataSampleList::reset (  ) 

Reset to initial state.


Member Data Documentation

DataSampleListElement* OpenDDS::DCPS::DataSampleList::head_

The first element of the list.

ssize_t OpenDDS::DCPS::DataSampleList::size_

Number of elements in the list.

DataSampleListElement* OpenDDS::DCPS::DataSampleList::tail_

The last element of the list.


The documentation for this class was generated from the following files:
Generated on Fri Jun 20 10:21:40 2008 for OpenDDS by  doxygen 1.4.7