shards::Array< Scalar, array_order, void, void, void, void, void, void, void, void > Class Template Reference
[Multidimensional Array with Tagged Dimensions]

The multi-dimensional Array interface with runtime user-defined dimension ordinates. Typically used when runtime-polymorphic arrays are passed to functions. More...

#include <Shards_Array.hpp>

List of all members.

Friends

class shards::Array

Array Attributes



enum  { Natural = NaturalOrder == array_order }
 

If the multidimension follows the natural ordering.


enum  { Reverse = FortranOrder == array_order }
 

If the multidimension follows the reverse (Fortran) ordering.


enum  { Contiguous = true }
 

If the member data storage is contiguous.


typedef Scalar value_type
 Type of member data.
typedef array_traits::int_t size_type
 Type for sizes.
typedef const ArrayDimTagtag_type
 Type of runtime dimension tags.
size_type rank () const
 Rank of the array is the number of non-void dimension tags.
bool natural () const
 If the multidimension follows the natural ordering.
bool reverse () const
 If the multidimension follows the reverse (Fortran) ordering.
bool contiguous () const
 If the member data storage is contiguous.
tag_type tag (size_type ord) const
 Access the dimension tag-singleton for a given ordinate.
size_type dimension (size_type ord) const
 Dimension of the given ordinate.
template<typename iType >
void dimensions (std::vector< iType > &n)
 Dimension of all ordinate.
size_type size () const
 Total number of data items.

Constructors and Assignment Operators



typedef array_traits::Helper
< Scalar, array_order, void,
void, void, void, void, void,
void, void >::reverse 
ReverseType
 Array ()
 Array (const Array &rhs)
Arrayoperator= (const Array &rhs)
 Array (const ReverseType &rhs)
 Copy constructor for reverse type.
Arrayoperator= (const ReverseType &rhs)
 Assignment operator for reverse type.
 Array (value_type *ptr, const size_type rank, const size_type *const dims, const tag_type *const tags)

Member data access operators



template<typename iType >
Array truncate (const iType &i) const
 Generate a subarray view of the array with the slowest striding ordinate offset by i and removed.
value_typecontiguous_data () const
 Pointer to contiguous block of member data.
template<typename iType >
value_typeoperator[] (const iType &i) const
 Access member via full ordering of members.
template<typename iType >
value_typeoperator() (const iType &i1, const iType &i2, const iType &i3, const iType &i4, const iType &i5, const iType &i6, const iType &i7, const iType &i8) const
 Access member via Rank 8 multi-index.
template<typename iType >
value_typeoperator() (const iType &i1, const iType &i2, const iType &i3, const iType &i4, const iType &i5, const iType &i6, const iType &i7) const
template<typename iType >
value_typeoperator() (const iType &i1, const iType &i2, const iType &i3, const iType &i4, const iType &i5, const iType &i6) const
template<typename iType >
value_typeoperator() (const iType &i1, const iType &i2, const iType &i3, const iType &i4, const iType &i5) const
template<typename iType >
value_typeoperator() (const iType &i1, const iType &i2, const iType &i3, const iType &i4) const
template<typename iType >
value_typeoperator() (const iType &i1, const iType &i2, const iType &i3) const
template<typename iType >
value_typeoperator() (const iType &i1, const iType &i2) const
template<typename iType >
value_typeoperator() (const iType &i1) const

Detailed Description

template<typename Scalar, ArrayOrder array_order>
class shards::Array< Scalar, array_order, void, void, void, void, void, void, void, void >

The multi-dimensional Array interface with runtime user-defined dimension ordinates. Typically used when runtime-polymorphic arrays are passed to functions.

Parameters:
Scalar The "plain old data" type of the array's member data.
array_order An ArrayOrder value that specifies whether to use Natural (a.k.a. C-language) or Fortran ordering for the multi-dimensions and multi-indices.

Definition at line 3172 of file Shards_Array.hpp.


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

Generated on Tue Oct 20 14:14:35 2009 for shards by  doxygen 1.6.1