ERC CISST - cisst software

vctDynamicNArrayOwner< _elementType, _dimension > Class Template Reference

#include <vctDynamicNArrayOwner.h>

Collaboration diagram for vctDynamicNArrayOwner< _elementType, _dimension >:

Collaboration graph
[legend]
List of all members.

Detailed Description

template<class _elementType, vct::size_type _dimension>
class vctDynamicNArrayOwner< _elementType, _dimension >

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

Definition at line 37 of file vctDynamicNArrayOwner.h.

Public Types

Public Member Functions

Public Attributes

Protected Member Functions

Protected Attributes


Member Typedef Documentation

template<class _elementType, vct::size_type _dimension>
typedef vctDynamicNArrayOwner<_elementType, _dimension> vctDynamicNArrayOwner< _elementType, _dimension >::ThisType

The type of this owner.

Definition at line 47 of file vctDynamicNArrayOwner.h.


Member Function Documentation

template<class _elementType, vct::size_type _dimension>
dimension_type vctDynamicNArrayOwner< _elementType, _dimension >::dimension ( void   )  const [inline]

Return the number of dimensions of the nArray.

Returns:
the number of dimensions of this nArray

Definition at line 77 of file vctDynamicNArrayOwner.h.

template<class _elementType, vct::size_type _dimension>
const nsize_type& vctDynamicNArrayOwner< _elementType, _dimension >::sizes ( void   )  const [inline]

Return the size of each dimension.

Returns:
a vector containing the size of the nArray in each dimension

Definition at line 84 of file vctDynamicNArrayOwner.h.

References vctDynamicNArrayOwner< _elementType, _dimension >::SizesMember.

template<class _elementType, vct::size_type _dimension>
size_type vctDynamicNArrayOwner< _elementType, _dimension >::size ( dimension_type  dimension  )  const [inline]

Return the size of a dimension.

Parameters:
dimension the dimension of interest
Returns:
the size of the nArray in the given dimension
Note:
the dimension is zero-based

Definition at line 95 of file vctDynamicNArrayOwner.h.

References vctDynamicNArrayOwner< _elementType, _dimension >::SizesMember.

template<class _elementType, vct::size_type _dimension>
size_type vctDynamicNArrayOwner< _elementType, _dimension >::size ( void   )  const [inline]

Return the size of the nArray.

Returns:
the number of elements
Note:
This method returns 0 if the dimension of the nArray is zero.

Definition at line 109 of file vctDynamicNArrayOwner.h.

References vctDynamicNArrayOwner< _elementType, _dimension >::SizesMember.

Referenced by vctDynamicNArrayOwner< _elementType, _dimension >::end(), and vctDynamicNArrayOwner< _elementType, _dimension >::rbegin().

template<class _elementType, vct::size_type _dimension>
const nstride_type& vctDynamicNArrayOwner< _elementType, _dimension >::strides ( void   )  const [inline]

Return the strides of each dimension.

Returns:
a vector containing the strides of the nArray in each dimension

Definition at line 119 of file vctDynamicNArrayOwner.h.

References vctDynamicNArrayOwner< _elementType, _dimension >::StridesMember.

template<class _elementType, vct::size_type _dimension>
stride_type vctDynamicNArrayOwner< _elementType, _dimension >::stride ( dimension_type  dimension  )  const [inline]

Return the stride of a dimension.

Parameters:
dimension the dimension of interest
Returns:
the stride of the nArray in the given dimension

Definition at line 127 of file vctDynamicNArrayOwner.h.

References vctDynamicNArrayOwner< _elementType, _dimension >::StridesMember.

template<class _elementType, vct::size_type _dimension>
pointer vctDynamicNArrayOwner< _elementType, _dimension >::Pointer ( void   )  [inline]

Return a pointer to the nArray's data.

Returns:
a pointer to this nArray's data

Definition at line 137 of file vctDynamicNArrayOwner.h.

References vctDynamicNArrayOwner< _elementType, _dimension >::Data.

template<class _elementType, vct::size_type _dimension>
pointer vctDynamicNArrayOwner< _elementType, _dimension >::Pointer ( const nsize_type &  indices  )  [inline]

Return a pointer to the nArray's data at the specified element.

Returns:
a pointer to this nArray's data at the specified element

Definition at line 144 of file vctDynamicNArrayOwner.h.

References vctDynamicNArrayOwner< _elementType, _dimension >::Data, and vctDynamicNArrayOwner< _elementType, _dimension >::StridesMember.

template<class _elementType, vct::size_type _dimension>
const_pointer vctDynamicNArrayOwner< _elementType, _dimension >::Pointer ( void   )  const [inline]

Return a const pointer to the nArray's data.

Returns:
a const pointer to this nArray's data

Definition at line 153 of file vctDynamicNArrayOwner.h.

References vctDynamicNArrayOwner< _elementType, _dimension >::Data.

template<class _elementType, vct::size_type _dimension>
const_pointer vctDynamicNArrayOwner< _elementType, _dimension >::Pointer ( const nsize_type &  indices  )  const [inline]

Return a const pointer to the nArray's data at the specified element.

Returns:
a const pointer to this nArray's data at the specified element

Definition at line 160 of file vctDynamicNArrayOwner.h.

References vctDynamicNArrayOwner< _elementType, _dimension >::Data, and vctDynamicNArrayOwner< _elementType, _dimension >::StridesMember.

template<class _elementType, vct::size_type _dimension>
void vctDynamicNArrayOwner< _elementType, _dimension >::SetSize ( const nsize_type &  sizes  )  [inline]

Non-preserving resize operation. This method discards of all the current data of the nArray and allocates new space in the requested size. Dimensionality remains unchanged.

Parameters:
sizes Vector of sizes in each dimension. If this vector does not have the same number of elements as the nArray's dimension, this method does nothing.
Note:
If the number of dimensions and the sizes of all dimensions are unchanged, this method does nothing.

Definition at line 223 of file vctDynamicNArrayOwner.h.

References vctDynamicNArrayOwner< _elementType, _dimension >::Disown(), vctDynamicNArrayOwner< _elementType, _dimension >::Own(), and vctDynamicNArrayOwner< _elementType, _dimension >::SizesMember.

Referenced by vctDynamicNArray< _elementType, _dimension >::SetSize(), vctDynamicNArray< _elementType, _dimension >::vctDynamicNArray(), and vctDynamicNArrayOwner< _elementType, _dimension >::vctDynamicNArrayOwner().

template<class _elementType, vct::size_type _dimension>
value_type* vctDynamicNArrayOwner< _elementType, _dimension >::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.

Definition at line 235 of file vctDynamicNArrayOwner.h.

References vctDynamicNArrayOwner< _elementType, _dimension >::Data, vctDynamicNArrayOwner< _elementType, _dimension >::SizesMember, and vctDynamicNArrayOwner< _elementType, _dimension >::UpdateStrides().

Referenced by vctDynamicNArray< _elementType, _dimension >::operator=(), vctDynamicNArray< _elementType, _dimension >::vctDynamicNArray(), and vctReturnDynamicNArray< _elementType, _dimension >::vctReturnDynamicNArray().

template<class _elementType, vct::size_type _dimension>
value_type* vctDynamicNArrayOwner< _elementType, _dimension >::Own ( const nsize_type &  sizes,
value_type *  data 
) [inline]

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

Returns:
data pointer the nArray held before taking ownership of the new data pointer
Note:
This method returns a pointer to the previously owned memory block but doesn't tell the size of the block.

Definition at line 251 of file vctDynamicNArrayOwner.h.

References vctDynamicNArrayOwner< _elementType, _dimension >::Data, vctDynamicNArrayOwner< _elementType, _dimension >::SizesMember, and vctDynamicNArrayOwner< _elementType, _dimension >::UpdateStrides().

Referenced by vctDynamicNArray< _elementType, _dimension >::operator=(), vctDynamicNArrayOwner< _elementType, _dimension >::SetSize(), vctDynamicNArray< _elementType, _dimension >::vctDynamicNArray(), and vctReturnDynamicNArray< _elementType, _dimension >::vctReturnDynamicNArray().

template<class _elementType, vct::size_type _dimension>
void vctDynamicNArrayOwner< _elementType, _dimension >::clear ( void   )  [inline]

Free the memory allocated for the data pointer. Set sizes in all dimensions to zero, but keep dimensionality.

Definition at line 263 of file vctDynamicNArrayOwner.h.

References vctDynamicNArrayOwner< _elementType, _dimension >::Disown().

Referenced by vctDynamicNArray< _elementType, _dimension >::operator=().

template<class _elementType, vct::size_type _dimension>
void vctDynamicNArrayOwner< _elementType, _dimension >::Disown ( void   )  [inline]

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

Definition at line 270 of file vctDynamicNArrayOwner.h.

References vctDynamicNArrayOwner< _elementType, _dimension >::Data, vctDynamicNArrayOwner< _elementType, _dimension >::SizesMember, and vctDynamicNArrayOwner< _elementType, _dimension >::UpdateStrides().

Referenced by vctDynamicNArrayOwner< _elementType, _dimension >::clear(), vctDynamicNArrayOwner< _elementType, _dimension >::SetSize(), and vctDynamicNArrayOwner< _elementType, _dimension >::~vctDynamicNArrayOwner().

template<class _elementType, vct::size_type _dimension>
void vctDynamicNArrayOwner< _elementType, _dimension >::UpdateStrides ( void   )  [inline, protected]

Update the StridesMember vector to reflect the elements of the SizesMember vector.

Definition at line 285 of file vctDynamicNArrayOwner.h.

References vctDynamicNArrayOwner< _elementType, _dimension >::SizesMember, and vctDynamicNArrayOwner< _elementType, _dimension >::StridesMember.

Referenced by vctDynamicNArrayOwner< _elementType, _dimension >::Disown(), vctDynamicNArrayOwner< _elementType, _dimension >::Own(), and vctDynamicNArrayOwner< _elementType, _dimension >::Release().


The documentation for this class was generated from the following file:
erc-cisst-devel<at>lists.johnshopkins.edu