casacore
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
casacore::ArrayBaseAccessor< T > Class Template Reference

Axis independent base for the ArrayAccessor classes. More...

#include <ArrayAccessor.h>

Public Member Functions

void operator+= (const size_t ix)
 Iterator-like operations. More...
 
void operator-= (const size_t ix)
 
void operator++ ()
 
void operator++ (int)
 
void operator-- ()
 
void operator-- (int)
 
const T & operator* () const
 Dereferencing. More...
 
T & operator* ()
 
T * data ()
 
const Array< T > & baseArray ()
 
size_t step ()
 
const T & operator[] (const int ix) const
 Index along current axis. More...
 
T & operator[] (const int ix)
 
const T * end ()
 End of index on line. More...
 
const T * end (const int n)
 
const T * begin ()
 Start of index on line. More...
 
const T * begin (const int n)
 
const T * rend ()
 End when reverse indexing. More...
 
const T * rend (const int n)
 
const T * rbegin ()
 Begin when reverse indexing. More...
 
const T * rbegin (const int n)
 

Protected Member Functions

 ArrayBaseAccessor ()
 Default constructor (for use in e.g. More...
 
 ArrayBaseAccessor (const Array< T > &arr)
 Construct from an Array. More...
 
 ArrayBaseAccessor (const Array< T > &arr, const size_t ax)
 
 ArrayBaseAccessor (const ArrayBaseAccessor< T > &other)
 Copy constructor (copy semantics) More...
 
 ArrayBaseAccessor (const ArrayBaseAccessor< T > &other, const size_t ax)
 
 ~ArrayBaseAccessor ()
 Destructor. More...
 
ArrayBaseAccessoroperator= (const ArrayBaseAccessor< T > &other)
 Assignment (copy semantics) More...
 
void init (const Array< T > &arr)
 (Re-)initialize from Array More...
 
void init (const Array< T > &arr, const size_t ax)
 
void init (const size_t ax)
 

Protected Attributes

const Array< T > * arrayPtr_p
 The pointer to belonging array. More...
 
size_t axis_p
 Current run-time axis. More...
 
T * ptr_p
 Current access pointer. More...
 
int step_p
 The increment to go from one point along an axis, to the next. More...
 
const T * begin_p
 The start element of array. More...
 
const T * end_p
 The one element beyond last on line. More...
 

Detailed Description

template<class T>
class casacore::ArrayBaseAccessor< T >

Axis independent base for the ArrayAccessor classes.

Intended use:

Internal

Synopsis

The ArrayBaseAccessor class implements the axis independent parts of the ArrayAccessor class. It can only be used from the ArrayAccessor class.

Definition at line 63 of file ArrayAccessor.h.

Constructor & Destructor Documentation

◆ ArrayBaseAccessor() [1/5]

template<class T >
casacore::ArrayBaseAccessor< T >::ArrayBaseAccessor ( )
inlineprotected

Default constructor (for use in e.g.

containers)

Definition at line 68 of file ArrayAccessor.h.

◆ ArrayBaseAccessor() [2/5]

template<class T >
casacore::ArrayBaseAccessor< T >::ArrayBaseAccessor ( const Array< T > &  arr)
inlineexplicitprotected

Construct from an Array.

Definition at line 72 of file ArrayAccessor.h.

◆ ArrayBaseAccessor() [3/5]

template<class T >
casacore::ArrayBaseAccessor< T >::ArrayBaseAccessor ( const Array< T > &  arr,
const size_t  ax 
)
inlineprotected

Definition at line 75 of file ArrayAccessor.h.

◆ ArrayBaseAccessor() [4/5]

template<class T >
casacore::ArrayBaseAccessor< T >::ArrayBaseAccessor ( const ArrayBaseAccessor< T > &  other)
inlineprotected

Copy constructor (copy semantics)

Definition at line 81 of file ArrayAccessor.h.

◆ ArrayBaseAccessor() [5/5]

template<class T >
casacore::ArrayBaseAccessor< T >::ArrayBaseAccessor ( const ArrayBaseAccessor< T > &  other,
const size_t  ax 
)
inlineprotected

Definition at line 84 of file ArrayAccessor.h.

◆ ~ArrayBaseAccessor()

template<class T >
casacore::ArrayBaseAccessor< T >::~ArrayBaseAccessor ( )
inlineprotected

Destructor.

Definition at line 91 of file ArrayAccessor.h.

Member Function Documentation

◆ baseArray()

template<class T >
const Array<T>& casacore::ArrayBaseAccessor< T >::baseArray ( )
inline

Definition at line 125 of file ArrayAccessor.h.

References casacore::ArrayBaseAccessor< T >::arrayPtr_p.

◆ begin() [1/2]

template<class T >
const T* casacore::ArrayBaseAccessor< T >::begin ( )
inline

Start of index on line.

Definition at line 143 of file ArrayAccessor.h.

References casacore::ArrayBaseAccessor< T >::begin_p.

◆ begin() [2/2]

template<class T >
const T* casacore::ArrayBaseAccessor< T >::begin ( const int  n)
inline

◆ data()

template<class T >
T* casacore::ArrayBaseAccessor< T >::data ( )
inline

Definition at line 124 of file ArrayAccessor.h.

References casacore::ArrayBaseAccessor< T >::ptr_p.

◆ end() [1/2]

template<class T >
const T* casacore::ArrayBaseAccessor< T >::end ( )
inline

End of index on line.

Definition at line 137 of file ArrayAccessor.h.

References casacore::ArrayBaseAccessor< T >::end_p.

◆ end() [2/2]

template<class T >
const T* casacore::ArrayBaseAccessor< T >::end ( const int  n)
inline

◆ init() [1/3]

template<class T >
void casacore::ArrayBaseAccessor< T >::init ( const Array< T > &  arr)
inlineprotected

◆ init() [2/3]

template<class T >
void casacore::ArrayBaseAccessor< T >::init ( const Array< T > &  arr,
const size_t  ax 
)
inlineprotected

◆ init() [3/3]

template<class T >
void casacore::ArrayBaseAccessor< T >::init ( const size_t  ax)
inlineprotected

◆ operator*() [1/2]

template<class T >
T& casacore::ArrayBaseAccessor< T >::operator* ( )
inline

Definition at line 123 of file ArrayAccessor.h.

References casacore::ArrayBaseAccessor< T >::ptr_p.

◆ operator*() [2/2]

template<class T >
const T& casacore::ArrayBaseAccessor< T >::operator* ( ) const
inline

Dereferencing.

Definition at line 122 of file ArrayAccessor.h.

References casacore::ArrayBaseAccessor< T >::ptr_p.

◆ operator++() [1/2]

template<class T >
void casacore::ArrayBaseAccessor< T >::operator++ ( )
inline

◆ operator++() [2/2]

template<class T >
void casacore::ArrayBaseAccessor< T >::operator++ ( int  )
inline

◆ operator+=()

template<class T >
void casacore::ArrayBaseAccessor< T >::operator+= ( const size_t  ix)
inline

Iterator-like operations.

Definition at line 112 of file ArrayAccessor.h.

References casacore::ArrayBaseAccessor< T >::ptr_p, and casacore::ArrayBaseAccessor< T >::step_p.

◆ operator--() [1/2]

template<class T >
void casacore::ArrayBaseAccessor< T >::operator-- ( )
inline

◆ operator--() [2/2]

template<class T >
void casacore::ArrayBaseAccessor< T >::operator-- ( int  )
inline

◆ operator-=()

template<class T >
void casacore::ArrayBaseAccessor< T >::operator-= ( const size_t  ix)
inline

◆ operator=()

template<class T >
ArrayBaseAccessor& casacore::ArrayBaseAccessor< T >::operator= ( const ArrayBaseAccessor< T > &  other)
inlineprotected

◆ operator[]() [1/2]

template<class T >
T& casacore::ArrayBaseAccessor< T >::operator[] ( const int  ix)
inline

◆ operator[]() [2/2]

template<class T >
const T& casacore::ArrayBaseAccessor< T >::operator[] ( const int  ix) const
inline

Index along current axis.

Definition at line 131 of file ArrayAccessor.h.

References casacore::ArrayBaseAccessor< T >::ptr_p, and casacore::ArrayBaseAccessor< T >::step_p.

◆ rbegin() [1/2]

template<class T >
const T* casacore::ArrayBaseAccessor< T >::rbegin ( )
inline

Begin when reverse indexing.

Definition at line 155 of file ArrayAccessor.h.

References casacore::ArrayBaseAccessor< T >::end_p, and casacore::ArrayBaseAccessor< T >::step_p.

◆ rbegin() [2/2]

template<class T >
const T* casacore::ArrayBaseAccessor< T >::rbegin ( const int  n)
inline

◆ rend() [1/2]

template<class T >
const T* casacore::ArrayBaseAccessor< T >::rend ( )
inline

End when reverse indexing.

Definition at line 149 of file ArrayAccessor.h.

References casacore::ArrayBaseAccessor< T >::begin_p, and casacore::ArrayBaseAccessor< T >::step_p.

◆ rend() [2/2]

template<class T >
const T* casacore::ArrayBaseAccessor< T >::rend ( const int  n)
inline

◆ step()

template<class T >
size_t casacore::ArrayBaseAccessor< T >::step ( )
inline

Definition at line 126 of file ArrayAccessor.h.

References casacore::ArrayBaseAccessor< T >::step_p.

Member Data Documentation

◆ arrayPtr_p

template<class T >
const Array<T>* casacore::ArrayBaseAccessor< T >::arrayPtr_p
protected

◆ axis_p

template<class T >
size_t casacore::ArrayBaseAccessor< T >::axis_p
protected

Current run-time axis.

Definition at line 164 of file ArrayAccessor.h.

Referenced by casacore::ArrayBaseAccessor< T >::init().

◆ begin_p

template<class T >
const T* casacore::ArrayBaseAccessor< T >::begin_p
protected

The start element of array.

Definition at line 170 of file ArrayAccessor.h.

Referenced by casacore::ArrayBaseAccessor< T >::begin(), and casacore::ArrayBaseAccessor< T >::rend().

◆ end_p

template<class T >
const T* casacore::ArrayBaseAccessor< T >::end_p
protected

The one element beyond last on line.

Definition at line 172 of file ArrayAccessor.h.

Referenced by casacore::ArrayBaseAccessor< T >::end(), and casacore::ArrayBaseAccessor< T >::rbegin().

◆ ptr_p

template<class T >
T* casacore::ArrayBaseAccessor< T >::ptr_p
protected

◆ step_p

template<class T >
int casacore::ArrayBaseAccessor< T >::step_p
protected

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