OpenDDS  Snapshot(2023/04/07-19:43)
Public Types | Public Member Functions | List of all members
TAO::DCPS::ZeroCopyDataSeq< Sample_T, DEF_MAX >::ZeroCopyVector Class Reference
Inheritance diagram for TAO::DCPS::ZeroCopyDataSeq< Sample_T, DEF_MAX >::ZeroCopyVector:
Inheritance graph
[legend]
Collaboration diagram for TAO::DCPS::ZeroCopyDataSeq< Sample_T, DEF_MAX >::ZeroCopyVector:
Collaboration graph
[legend]

Public Types

typedef ACE_Vector< OpenDDS::DCPS::ReceivedDataElement *, DEF_MAX > BASE
 
- Public Types inherited from ACE_Vector< OpenDDS::DCPS::ReceivedDataElement *, DEF_MAX >
typedef ACE_Vector_Iterator< OpenDDS::DCPS::ReceivedDataElement *, DEF_MAX > Iterator
 
- Public Types inherited from ACE_Array< T >
typedef T TYPE
 
typedef ACE_Array_Iterator< T > ITERATOR
 
- Public Types inherited from ACE_Array_Base< T >
typedef T TYPE
 
typedef ACE_Array_Iterator< T > ITERATOR
 
typedef T value_type
 
typedef value_typeiterator
 
typedef value_type const * const_iterator
 
typedef value_typereference
 
typedef value_type const & const_reference
 
typedef value_typepointer
 
typedef value_type const * const_pointer
 
typedef ptrdiff_t difference_type
 
typedef ACE_Allocator::size_type size_type
 

Public Member Functions

 ZeroCopyVector (const size_t init_size=DEF_MAX, ACE_Allocator *alloc=0)
 
void swap (ZeroCopyVector &)
 
- Public Member Functions inherited from ACE_Vector< OpenDDS::DCPS::ReceivedDataElement *, DEF_MAX >
 ACE_Vector (const size_t init_size=DEF_MAX, ACE_Allocator *alloc=0)
 
 ~ACE_Vector ()
 
size_t capacity (void) const
 
size_t size (void) const
 
void clear (void)
 
void resize (const size_t new_size, const OpenDDS::DCPS::ReceivedDataElement * &t)
 
void push_back (const OpenDDS::DCPS::ReceivedDataElement * &elem)
 
void pop_back (void)
 
void dump (void) const
 
bool operator== (const ACE_Vector< OpenDDS::DCPS::ReceivedDataElement *, DEF_MAX > &s) const
 
bool operator!= (const ACE_Vector< OpenDDS::DCPS::ReceivedDataElement *, DEF_MAX > &s) const
 
void swap (ACE_Vector &rhs)
 
ACE_Array_Base< OpenDDS::DCPS::ReceivedDataElement * >::iterator end ()
 
ACE_Array_Base< OpenDDS::DCPS::ReceivedDataElement * >::const_iterator end () const
 
- Public Member Functions inherited from ACE_Array< T >
 ACE_Array (size_t size=0, ACE_Allocator *alloc=0)
 
 ACE_Array (size_t size, const T &default_value, ACE_Allocator *alloc=0)
 
 ACE_Array (const ACE_Array< T > &s)
 
void operator= (const ACE_Array< T > &s)
 
bool operator== (const ACE_Array< T > &s) const
 
bool operator!= (const ACE_Array< T > &s) const
 
- Public Member Functions inherited from ACE_Array_Base< T >
ACE_DECLARE_STL_REVERSE_ITERATORS ACE_Array_Base (size_type size=0, ACE_Allocator *the_allocator=0)
 
 ACE_Array_Base (size_type size, T const &default_value, ACE_Allocator *the_allocator=0)
 
 ACE_Array_Base (ACE_Array_Base< T > const &s)
 
void operator= (ACE_Array_Base< T > const &s)
 
 ~ACE_Array_Base (void)
 
T & operator[] (size_type slot)
 
T const & operator[] (size_type slot) const
 
int set (T const &new_item, size_type slot)
 
int get (T &item, size_type slot) const
 
size_type size (void) const
 
int size (size_type new_size)
 
size_type max_size (void) const
 
int max_size (size_type new_size)
 
void swap (ACE_Array_Base< T > &array)
 
iterator begin (void)
 
iterator end (void)
 
const_iterator begin (void) const
 
const_iterator end (void) const
 
reverse_iterator rbegin (void)
 
reverse_iterator rend (void)
 
const_reverse_iterator rbegin (void) const
 
const_reverse_iterator rend (void) const
 
iterator begin (void)
 
iterator end (void)
 
const_iterator begin (void) const
 
const_iterator end (void) const
 
reverse_iterator rbegin (void)
 
reverse_iterator rend (void)
 
const_reverse_iterator rbegin (void) const
 
const_reverse_iterator rend (void) const
 

Additional Inherited Members

- Public Attributes inherited from ACE_Vector< OpenDDS::DCPS::ReceivedDataElement *, DEF_MAX >
 ACE_ALLOC_HOOK_DECLARE
 
- Protected Member Functions inherited from ACE_Array_Base< T >
bool in_range (size_type slot) const
 
- Protected Attributes inherited from ACE_Vector< OpenDDS::DCPS::ReceivedDataElement *, DEF_MAX >
size_t length_
 
size_t curr_max_size_
 
- Protected Attributes inherited from ACE_Array_Base< T >
size_type max_size_
 
size_type cur_size_
 
value_typearray_
 
ACE_Allocatorallocator_
 

Detailed Description

template<class Sample_T, size_t DEF_MAX = DCPS_ZERO_COPY_SEQ_DEFAULT_SIZE>
class TAO::DCPS::ZeroCopyDataSeq< Sample_T, DEF_MAX >::ZeroCopyVector

In some versions of ACE, ACE_Vector doesn't have a working swap() function, so we have to provide our own.

This version also provides public access to the allocator_ member, something the ACE_Vector doesn't do

Definition at line 161 of file ZeroCopySeq_T.h.

Member Typedef Documentation

◆ BASE

template<class Sample_T, size_t DEF_MAX = DCPS_ZERO_COPY_SEQ_DEFAULT_SIZE>
typedef ACE_Vector<OpenDDS::DCPS::ReceivedDataElement*, DEF_MAX> TAO::DCPS::ZeroCopyDataSeq< Sample_T, DEF_MAX >::ZeroCopyVector::BASE

Definition at line 168 of file ZeroCopySeq_T.h.

Constructor & Destructor Documentation

◆ ZeroCopyVector()

template<class Sample_T , size_t DEF_MAX>
ACE_INLINE TAO::DCPS::ZeroCopyDataSeq< Sample_T, DEF_MAX >::ZeroCopyVector::ZeroCopyVector ( const size_t  init_size = DEF_MAX,
ACE_Allocator alloc = 0 
)

Member Function Documentation

◆ swap()

template<class Sample_T , size_t DEF_MAX>
ACE_INLINE void TAO::DCPS::ZeroCopyDataSeq< Sample_T, DEF_MAX >::ZeroCopyVector::swap ( ZeroCopyVector rhs)

Definition at line 32 of file ZeroCopySeq_T.inl.

References ACE_INLINE, ACE_Vector< T, DEFAULT_SIZE >::curr_max_size_, ACE_Vector< OpenDDS::DCPS::ReceivedDataElement *, DEF_MAX >::curr_max_size_, ACE_Vector< T, DEFAULT_SIZE >::length_, ACE_Vector< OpenDDS::DCPS::ReceivedDataElement *, DEF_MAX >::length_, ACE_Array_Base< T >::swap(), and OpenDDS::DCPS::swap().

Referenced by TAO::DCPS::ZeroCopyDataSeq< Sample_T, DEF_MAX >::swap().

33 {
34  // Later versions of ACE do have a working ACE_Vector<T,MAX>::swap so we must
35  // delegate up to ACE_Array<T> to get consistent swap behavior.
37  std::swap(this->length_, rhs.length_);
38  std::swap(this->curr_max_size_, rhs.curr_max_size_);
39 }
void swap(ACE_Array_Base< T > &array)
void swap(MessageBlock &lhs, MessageBlock &rhs)

The documentation for this class was generated from the following files: