cisst-saw
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Types | Public Member Functions | Protected Attributes | List of all members
vctDynamicVectorOwner< _elementType > Class Template Reference

#include <vctDynamicVectorOwner.h>

Public Types

enum  { DEFAULT_STRIDE = 1 }
 
typedef vctDynamicVectorOwner
< _elementType > 
ThisType
 
typedef
vctFixedStrideVectorConstIterator
< value_type, DEFAULT_STRIDE
const_iterator
 
typedef
vctFixedStrideVectorConstIterator
< value_type,-DEFAULT_STRIDE
const_reverse_iterator
 
typedef
vctFixedStrideVectorIterator
< value_type, DEFAULT_STRIDE
iterator
 
typedef
vctFixedStrideVectorIterator
< value_type,-DEFAULT_STRIDE
reverse_iterator
 

Public Member Functions

 VCT_CONTAINER_TRAITS_TYPEDEFS (_elementType)
 
 vctDynamicVectorOwner ()
 
 vctDynamicVectorOwner (size_type size)
 
 ~vctDynamicVectorOwner ()
 
size_type size (void) const
 
stride_type stride (void) const
 
pointer Pointer (index_type index=0)
 
const_pointer Pointer (index_type index=0) const
 
const_iterator begin (void) const
 
const_iterator end (void) const
 
iterator begin (void)
 
iterator end (void)
 
const_reverse_iterator rbegin (void) const
 
const_reverse_iterator rend (void) const
 
reverse_iterator rbegin (void)
 
reverse_iterator rend (void)
 
void SetSize (size_type size)
 
value_type * Release ()
 
value_type * Own (size_type size, value_type *data)
 
void Disown (void)
 

Protected Attributes

size_type Size
 
value_type * Data
 

Detailed Description

template<class _elementType>
class vctDynamicVectorOwner< _elementType >

This templated class owns a dynamically allocated array, but does not provide any other operations

Member Typedef Documentation

template<class _elementType >
typedef vctFixedStrideVectorConstIterator<value_type, DEFAULT_STRIDE> vctDynamicVectorOwner< _elementType >::const_iterator
template<class _elementType >
typedef vctFixedStrideVectorConstIterator<value_type, -DEFAULT_STRIDE> vctDynamicVectorOwner< _elementType >::const_reverse_iterator
template<class _elementType >
typedef vctFixedStrideVectorIterator<value_type, DEFAULT_STRIDE> vctDynamicVectorOwner< _elementType >::iterator
template<class _elementType >
typedef vctFixedStrideVectorIterator<value_type, -DEFAULT_STRIDE> vctDynamicVectorOwner< _elementType >::reverse_iterator
template<class _elementType >
typedef vctDynamicVectorOwner<_elementType> vctDynamicVectorOwner< _elementType >::ThisType

The type of this owner.

Member Enumeration Documentation

template<class _elementType >
anonymous enum
Enumerator
DEFAULT_STRIDE 

Constructor & Destructor Documentation

template<class _elementType >
vctDynamicVectorOwner< _elementType >::vctDynamicVectorOwner ( )
inline
template<class _elementType >
vctDynamicVectorOwner< _elementType >::vctDynamicVectorOwner ( size_type  size)
inline
template<class _elementType >
vctDynamicVectorOwner< _elementType >::~vctDynamicVectorOwner ( )
inline

Member Function Documentation

template<class _elementType >
const_iterator vctDynamicVectorOwner< _elementType >::begin ( void  ) const
inline
template<class _elementType >
iterator vctDynamicVectorOwner< _elementType >::begin ( void  )
inline
template<class _elementType >
void vctDynamicVectorOwner< _elementType >::Disown ( void  )
inline

Free the memory allocated for the data pointer. Reset data pointer and size to zero.

template<class _elementType >
const_iterator vctDynamicVectorOwner< _elementType >::end ( void  ) const
inline
template<class _elementType >
iterator vctDynamicVectorOwner< _elementType >::end ( void  )
inline
template<class _elementType >
value_type* vctDynamicVectorOwner< _elementType >::Own ( size_type  size,
value_type *  data 
)
inline

Have this owner take ownership of a new data pointer. Return the old data pointer without freeing memory.

template<class _elementType >
pointer vctDynamicVectorOwner< _elementType >::Pointer ( index_type  index = 0)
inline
template<class _elementType >
const_pointer vctDynamicVectorOwner< _elementType >::Pointer ( index_type  index = 0) const
inline
template<class _elementType >
const_reverse_iterator vctDynamicVectorOwner< _elementType >::rbegin ( void  ) const
inline
template<class _elementType >
reverse_iterator vctDynamicVectorOwner< _elementType >::rbegin ( void  )
inline
template<class _elementType >
value_type* vctDynamicVectorOwner< _elementType >::Release ( void  )
inline

Release the currently owned data pointer from being owned. Reset this owner's data pointer and size to zero. Return the old data pointer without freeing memory.

template<class _elementType >
const_reverse_iterator vctDynamicVectorOwner< _elementType >::rend ( void  ) const
inline
template<class _elementType >
reverse_iterator vctDynamicVectorOwner< _elementType >::rend ( void  )
inline
template<class _elementType >
void vctDynamicVectorOwner< _elementType >::SetSize ( size_type  size)
inline

Non-preserving resize operation. This method discards of all the current data of the dynamic array and allocates new space in the requested size.

Note
If the size is unchanged, this method does nothing.
If the size is set to zero, the data pointer is set to null (0).
template<class _elementType >
size_type vctDynamicVectorOwner< _elementType >::size ( void  ) const
inline
template<class _elementType >
stride_type vctDynamicVectorOwner< _elementType >::stride ( void  ) const
inline
template<class _elementType >
vctDynamicVectorOwner< _elementType >::VCT_CONTAINER_TRAITS_TYPEDEFS ( _elementType  )

Member Data Documentation

template<class _elementType >
value_type* vctDynamicVectorOwner< _elementType >::Data
protected
template<class _elementType >
size_type vctDynamicVectorOwner< _elementType >::Size
protected

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