Teuchos Package Browser (Single Doxygen Collection)  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Types | Public Member Functions | Private Member Functions | Private Attributes | List of all members
Teuchos::ArrayRCP< const T > Class Template Reference

Partial specialization of ArrayRCP for const T. More...

#include <Teuchos_ArrayRCPDecl.hpp>

Public Types

typedef Teuchos_Ordinal Ordinal
 
typedef Ordinal size_type
 
typedef Ordinal difference_type
 
typedef
std::random_access_iterator_tag 
iterator_category
 
typedef const T * iterator_type
 
typedef const T value_type
 
typedef const T & reference
 
typedef const T & const_reference
 
typedef const T * pointer
 
typedef const T * const_pointer
 
typedef const T element_type
 
typedef const T * iterator
 
typedef const T * const_iterator
 

Public Member Functions

 ArrayRCP (ENull null_arg=null)
 
 ArrayRCP (const T *p, size_type lowerOffset, size_type size, bool has_ownership, const ERCPNodeLookup rcpNodeLookup=RCP_ENABLE_NODE_LOOKUP)
 
template<class Dealloc_T >
 ArrayRCP (const T *p, size_type lowerOffset, size_type size, Dealloc_T dealloc, bool has_ownership)
 
 ArrayRCP (size_type size, const T &val=T())
 
 ArrayRCP (const ArrayRCP< const T > &r_ptr)
 
 ~ArrayRCP ()
 
ArrayRCP< const T > & operator= (const ArrayRCP< const T > &r_ptr)
 
bool is_null () const
 
const T * operator-> () const
 
const T & operator* () const
 
const T * get () const
 
const T * getRawPtr () const
 
const T & operator[] (size_type offset) const
 
ArrayRCP< const T > & operator++ ()
 
ArrayRCP< const T > operator++ (int)
 
ArrayRCP< const T > & operator-- ()
 
ArrayRCP< const T > operator-- (int)
 
ArrayRCP< const T > & operator+= (size_type offset)
 
ArrayRCP< const T > & operator-= (size_type offset)
 
ArrayRCP< const T > operator+ (size_type offset) const
 
ArrayRCP< const T > operator- (size_type offset) const
 
iterator begin () const
 
iterator end () const
 
ArrayRCP< const T > getConst () const
 Return const reference to the array. More...
 
ArrayRCP< const T > persistingView (size_type lowerOffset, size_type size) const
 
size_type lowerOffset () const
 
size_type upperOffset () const
 
size_type size () const
 
ArrayView< const T > view (size_type lowerOffset, size_type size) const
 
ArrayView< const T > operator() (size_type lowerOffset, size_type size) const
 
ArrayView< const T > operator() () const
 
void resize (const size_type n, const T &val=T())
 
void clear ()
 
ERCPStrength strength () const
 
bool is_valid_ptr () const
 
int strong_count () const
 
int weak_count () const
 
int total_count () const
 
void set_has_ownership ()
 
bool has_ownership () const
 
const T * release ()
 
ArrayRCP< const T > create_weak () const
 
ArrayRCP< const T > create_strong () const
 
template<class T2 >
bool shares_resource (const ArrayRCP< T2 > &r_ptr) const
 
const ArrayRCP< const T > & assert_not_null () const
 
const ArrayRCP< const T > & assert_in_range (size_type lowerOffset, size_type size) const
 
const ArrayRCP< const T > & assert_valid_ptr () const
 
template<class T >
 ArrayRCP (const T *p, size_type lowerOffset_in, size_type size_in, const RCPNodeHandle &node)
 

Private Member Functions

void debug_assert_not_null () const
 
void debug_assert_in_range (size_type lowerOffset_in, size_type size_in) const
 
void debug_assert_valid_ptr () const
 

Private Attributes

const T * ptr_
 
RCPNodeHandle node_
 
size_type lowerOffset_
 
size_type upperOffset_
 

Detailed Description

template<class T>
class Teuchos::ArrayRCP< const T >

Partial specialization of ArrayRCP for const T.

The main documentation for ArrayRCP explains why this class needs a partial specialization for const types.

Definition at line 838 of file Teuchos_ArrayRCPDecl.hpp.

Member Typedef Documentation

template<class T >
typedef Teuchos_Ordinal Teuchos::ArrayRCP< const T >::Ordinal

Definition at line 840 of file Teuchos_ArrayRCPDecl.hpp.

template<class T >
typedef Ordinal Teuchos::ArrayRCP< const T >::size_type

Definition at line 841 of file Teuchos_ArrayRCPDecl.hpp.

template<class T >
typedef Ordinal Teuchos::ArrayRCP< const T >::difference_type

Definition at line 842 of file Teuchos_ArrayRCPDecl.hpp.

template<class T >
typedef std::random_access_iterator_tag Teuchos::ArrayRCP< const T >::iterator_category

Definition at line 843 of file Teuchos_ArrayRCPDecl.hpp.

template<class T >
typedef const T* Teuchos::ArrayRCP< const T >::iterator_type

Definition at line 844 of file Teuchos_ArrayRCPDecl.hpp.

template<class T >
typedef const T Teuchos::ArrayRCP< const T >::value_type

Definition at line 845 of file Teuchos_ArrayRCPDecl.hpp.

template<class T >
typedef const T& Teuchos::ArrayRCP< const T >::reference

Definition at line 846 of file Teuchos_ArrayRCPDecl.hpp.

template<class T >
typedef const T& Teuchos::ArrayRCP< const T >::const_reference

Definition at line 847 of file Teuchos_ArrayRCPDecl.hpp.

template<class T >
typedef const T* Teuchos::ArrayRCP< const T >::pointer

Definition at line 848 of file Teuchos_ArrayRCPDecl.hpp.

template<class T >
typedef const T* Teuchos::ArrayRCP< const T >::const_pointer

Definition at line 849 of file Teuchos_ArrayRCPDecl.hpp.

template<class T >
typedef const T Teuchos::ArrayRCP< const T >::element_type

Definition at line 850 of file Teuchos_ArrayRCPDecl.hpp.

template<class T >
typedef const T* Teuchos::ArrayRCP< const T >::iterator

Definition at line 856 of file Teuchos_ArrayRCPDecl.hpp.

template<class T >
typedef const T* Teuchos::ArrayRCP< const T >::const_iterator

Definition at line 857 of file Teuchos_ArrayRCPDecl.hpp.

Constructor & Destructor Documentation

template<class T >
Teuchos::ArrayRCP< const T >::ArrayRCP ( ENull  null_arg = null)
inline

Definition at line 123 of file Teuchos_ArrayRCP.hpp.

template<class T >
Teuchos::ArrayRCP< const T >::ArrayRCP ( const T *  p,
size_type  lowerOffset,
size_type  size,
bool  has_ownership,
const ERCPNodeLookup  rcpNodeLookup = RCP_ENABLE_NODE_LOOKUP 
)
inline

Definition at line 187 of file Teuchos_ArrayRCP.hpp.

template<class T >
template<class Dealloc_T >
Teuchos::ArrayRCP< const T >::ArrayRCP ( const T *  p,
size_type  lowerOffset,
size_type  size,
Dealloc_T  dealloc,
bool  has_ownership 
)
inline

Definition at line 252 of file Teuchos_ArrayRCP.hpp.

template<class T >
Teuchos::ArrayRCP< const T >::ArrayRCP ( size_type  size,
const T &  val = T () 
)
inlineexplicit

Definition at line 137 of file Teuchos_ArrayRCP.hpp.

template<class T >
Teuchos::ArrayRCP< const T >::ArrayRCP ( const ArrayRCP< const T > &  r_ptr)
inline

Definition at line 285 of file Teuchos_ArrayRCP.hpp.

template<class T >
Teuchos::ArrayRCP< const T >::~ArrayRCP ( )
inline

Definition at line 297 of file Teuchos_ArrayRCP.hpp.

template<class T >
template<class T >
Teuchos::ArrayRCP< const T >::ArrayRCP ( const T *  p,
size_type  lowerOffset_in,
size_type  size_in,
const RCPNodeHandle node 
)
inline

Definition at line 1196 of file Teuchos_ArrayRCP.hpp.

Member Function Documentation

template<class T >
ArrayRCP< const T > & Teuchos::ArrayRCP< const T >::operator= ( const ArrayRCP< const T > &  r_ptr)
inline

Definition at line 316 of file Teuchos_ArrayRCP.hpp.

template<class T >
bool Teuchos::ArrayRCP< const T >::is_null ( ) const
inline

Definition at line 340 of file Teuchos_ArrayRCP.hpp.

template<class T >
const T * Teuchos::ArrayRCP< const T >::operator-> ( ) const
inline

Definition at line 354 of file Teuchos_ArrayRCP.hpp.

template<class T >
const T & Teuchos::ArrayRCP< const T >::operator* ( ) const
inline

Definition at line 371 of file Teuchos_ArrayRCP.hpp.

template<class T >
const T * Teuchos::ArrayRCP< const T >::get ( ) const
inline

Definition at line 390 of file Teuchos_ArrayRCP.hpp.

template<class T >
const T * Teuchos::ArrayRCP< const T >::getRawPtr ( ) const
inline

Definition at line 406 of file Teuchos_ArrayRCP.hpp.

template<class T >
const T & Teuchos::ArrayRCP< const T >::operator[] ( size_type  offset) const
inline

Definition at line 420 of file Teuchos_ArrayRCP.hpp.

template<class T >
ArrayRCP< const T > & Teuchos::ArrayRCP< const T >::operator++ ( )
inline

Definition at line 442 of file Teuchos_ArrayRCP.hpp.

template<class T >
ArrayRCP< const T > Teuchos::ArrayRCP< const T >::operator++ ( int  )
inline

Definition at line 462 of file Teuchos_ArrayRCP.hpp.

template<class T >
ArrayRCP< const T > & Teuchos::ArrayRCP< const T >::operator-- ( )
inline

Definition at line 482 of file Teuchos_ArrayRCP.hpp.

template<class T >
ArrayRCP< const T > Teuchos::ArrayRCP< const T >::operator-- ( int  )
inline

Definition at line 502 of file Teuchos_ArrayRCP.hpp.

template<class T >
ArrayRCP< const T > & Teuchos::ArrayRCP< const T >::operator+= ( size_type  offset)
inline

Definition at line 522 of file Teuchos_ArrayRCP.hpp.

template<class T >
ArrayRCP< const T > & Teuchos::ArrayRCP< const T >::operator-= ( size_type  offset)
inline

Definition at line 543 of file Teuchos_ArrayRCP.hpp.

template<class T >
ArrayRCP< const T > Teuchos::ArrayRCP< const T >::operator+ ( size_type  offset) const
inline

Definition at line 562 of file Teuchos_ArrayRCP.hpp.

template<class T >
ArrayRCP< const T > Teuchos::ArrayRCP< const T >::operator- ( size_type  offset) const
inline

Definition at line 579 of file Teuchos_ArrayRCP.hpp.

template<class T >
ArrayRCP< const T >::iterator Teuchos::ArrayRCP< const T >::begin ( ) const
inline

Definition at line 602 of file Teuchos_ArrayRCP.hpp.

template<class T >
ArrayRCP< const T >::iterator Teuchos::ArrayRCP< const T >::end ( ) const
inline

Definition at line 625 of file Teuchos_ArrayRCP.hpp.

template<class T >
ArrayRCP< const T > Teuchos::ArrayRCP< const T >::getConst ( ) const
inline

Return const reference to the array.

This method has a trivial implementation for the const T specialization of ArrayRCP.

Definition at line 651 of file Teuchos_ArrayRCP.hpp.

template<class T >
ArrayRCP< const T > Teuchos::ArrayRCP< const T >::persistingView ( size_type  lowerOffset,
size_type  size 
) const
inline

Definition at line 675 of file Teuchos_ArrayRCP.hpp.

template<class T >
ArrayRCP< const T >::size_type Teuchos::ArrayRCP< const T >::lowerOffset ( ) const
inline

Definition at line 703 of file Teuchos_ArrayRCP.hpp.

template<class T >
ArrayRCP< const T >::size_type Teuchos::ArrayRCP< const T >::upperOffset ( ) const
inline

Definition at line 720 of file Teuchos_ArrayRCP.hpp.

template<class T >
ArrayRCP< const T >::size_type Teuchos::ArrayRCP< const T >::size ( ) const
inline

Definition at line 737 of file Teuchos_ArrayRCP.hpp.

template<class T >
ArrayView< const T > Teuchos::ArrayRCP< const T >::view ( size_type  lowerOffset,
size_type  size 
) const
inline

Definition at line 765 of file Teuchos_ArrayRCP.hpp.

template<class T >
ArrayView< const T > Teuchos::ArrayRCP< const T >::operator() ( size_type  lowerOffset,
size_type  size 
) const
inline

Definition at line 789 of file Teuchos_ArrayRCP.hpp.

template<class T >
ArrayView< const T > Teuchos::ArrayRCP< const T >::operator() ( ) const
inline

Definition at line 805 of file Teuchos_ArrayRCP.hpp.

template<class T >
void Teuchos::ArrayRCP< const T >::resize ( const size_type  n,
const T &  val = T () 
)
inline

Definition at line 881 of file Teuchos_ArrayRCP.hpp.

template<class T >
void Teuchos::ArrayRCP< const T >::clear ( )
inline

Definition at line 916 of file Teuchos_ArrayRCP.hpp.

template<class T >
ERCPStrength Teuchos::ArrayRCP< const T >::strength ( ) const
inline

Definition at line 944 of file Teuchos_ArrayRCP.hpp.

template<class T >
bool Teuchos::ArrayRCP< const T >::is_valid_ptr ( ) const
inline

Definition at line 958 of file Teuchos_ArrayRCP.hpp.

template<class T >
int Teuchos::ArrayRCP< const T >::strong_count ( ) const
inline

Definition at line 973 of file Teuchos_ArrayRCP.hpp.

template<class T >
int Teuchos::ArrayRCP< const T >::weak_count ( ) const
inline

Definition at line 986 of file Teuchos_ArrayRCP.hpp.

template<class T >
int Teuchos::ArrayRCP< const T >::total_count ( ) const
inline

Definition at line 999 of file Teuchos_ArrayRCP.hpp.

template<class T >
void Teuchos::ArrayRCP< const T >::set_has_ownership ( )
inline

Definition at line 1012 of file Teuchos_ArrayRCP.hpp.

template<class T >
bool Teuchos::ArrayRCP< const T >::has_ownership ( ) const
inline

Definition at line 1025 of file Teuchos_ArrayRCP.hpp.

template<class T >
const T * Teuchos::ArrayRCP< const T >::release ( )
inline

Definition at line 1040 of file Teuchos_ArrayRCP.hpp.

template<class T >
ArrayRCP< const T > Teuchos::ArrayRCP< const T >::create_weak ( ) const
inline

Definition at line 1055 of file Teuchos_ArrayRCP.hpp.

template<class T >
ArrayRCP< const T > Teuchos::ArrayRCP< const T >::create_strong ( ) const
inline

Definition at line 1068 of file Teuchos_ArrayRCP.hpp.

template<class T >
template<class T2 >
bool Teuchos::ArrayRCP< const T >::shares_resource ( const ArrayRCP< T2 > &  r_ptr) const
inline

Definition at line 1088 of file Teuchos_ArrayRCP.hpp.

template<class T >
const ArrayRCP< const T > & Teuchos::ArrayRCP< const T >::assert_not_null ( ) const
inline

Definition at line 1111 of file Teuchos_ArrayRCP.hpp.

template<class T >
const ArrayRCP< const T > & Teuchos::ArrayRCP< const T >::assert_in_range ( size_type  lowerOffset,
size_type  size 
) const
inline

Definition at line 1162 of file Teuchos_ArrayRCP.hpp.

template<class T >
const ArrayRCP< const T > & Teuchos::ArrayRCP< const T >::assert_valid_ptr ( ) const
inline

Definition at line 1130 of file Teuchos_ArrayRCP.hpp.

template<class T >
void Teuchos::ArrayRCP< const T >::debug_assert_not_null ( ) const
inlineprivate

Definition at line 934 of file Teuchos_ArrayRCPDecl.hpp.

template<class T >
void Teuchos::ArrayRCP< const T >::debug_assert_in_range ( size_type  lowerOffset_in,
size_type  size_in 
) const
inlineprivate

Definition at line 941 of file Teuchos_ArrayRCPDecl.hpp.

template<class T >
void Teuchos::ArrayRCP< const T >::debug_assert_valid_ptr ( ) const
inlineprivate

Definition at line 950 of file Teuchos_ArrayRCPDecl.hpp.

Member Data Documentation

template<class T >
const T* Teuchos::ArrayRCP< const T >::ptr_
private

Definition at line 929 of file Teuchos_ArrayRCPDecl.hpp.

template<class T >
RCPNodeHandle Teuchos::ArrayRCP< const T >::node_
private

Definition at line 930 of file Teuchos_ArrayRCPDecl.hpp.

template<class T >
size_type Teuchos::ArrayRCP< const T >::lowerOffset_
private

Definition at line 931 of file Teuchos_ArrayRCPDecl.hpp.

template<class T >
size_type Teuchos::ArrayRCP< const T >::upperOffset_
private

Definition at line 932 of file Teuchos_ArrayRCPDecl.hpp.


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