|
| template<typename... ARGS, typename = std::enable_if_t<sizeof...(ARGS) == DIMENSION && convertible_type<TYPE, ARGS...>::value>> |
| constexpr | dimensioned_array (ARGS... args) |
| | Variadic constructor.
|
| constexpr | dimensioned_array (std::initializer_list< TYPE > list) |
| | Initializer list constructor.
|
| constexpr | dimensioned_array (TYPE const &val) |
| | Constructor (fill with given value).
|
| constexpr dimensioned_array | operator/ (TYPE val) |
| | Division operator involving a constant.
|
| constexpr dimensioned_array & | operator= (const TYPE &val) |
| | Assignment operator.
|
| template<typename ENUM_TYPE> |
| constexpr TYPE & | operator[] (ENUM_TYPE e) |
| | Support for enumerated type access, e.g., da[x], for accessing the x axis.
|
| template<typename ENUM_TYPE> |
| constexpr TYPE const & | operator[] (ENUM_TYPE e) const |
| | Support for enumerated type access, e.g., da[x], for accessing the x axis.
|
Updates with corresponding values or the one given value.
|
| constexpr dimensioned_array & | operator+= (dimensioned_array const &rhs) |
| constexpr dimensioned_array & | operator+= (TYPE val) |
| constexpr dimensioned_array & | operator-= (dimensioned_array const &rhs) |
| constexpr dimensioned_array & | operator-= (TYPE val) |
| constexpr dimensioned_array & | operator*= (dimensioned_array const &rhs) |
| constexpr dimensioned_array & | operator*= (TYPE val) |
| constexpr dimensioned_array & | operator/= (dimensioned_array const &rhs) |
| constexpr dimensioned_array & | operator/= (TYPE val) |
|
(Note that these are not member symbols.)
|
| template<typename TYPE, Dimension DIMENSION, std::size_t NAMESPACE> |
| constexpr dimensioned_array< TYPE, DIMENSION, NAMESPACE > | operator+ (const dimensioned_array< TYPE, DIMENSION, NAMESPACE > &lhs, const dimensioned_array< TYPE, DIMENSION, NAMESPACE > &rhs) |
| | Addition operator.
|
| template<typename TYPE, Dimension DIMENSION, std::size_t NAMESPACE> |
| constexpr dimensioned_array< TYPE, DIMENSION, NAMESPACE > | operator- (const dimensioned_array< TYPE, DIMENSION, NAMESPACE > &lhs, const dimensioned_array< TYPE, DIMENSION, NAMESPACE > &rhs) |
| | Subtraction operator.
|
| template<typename TYPE, Dimension DIMENSION, std::size_t NAMESPACE> |
| std::ostream & | operator<< (std::ostream &stream, dimensioned_array< TYPE, DIMENSION, NAMESPACE > const &a) |
| | Output operator.
|
template<typename TYPE,
Dimension DIMENSION, std::size_t NAMESPACE>
class flecsi::util::dimensioned_array< TYPE, DIMENSION, NAMESPACE >
The dimensioned_array type provides a general base for defining contiguous array types that have a specific dimension.
- Template Parameters
-
| TYPE | The type of the array, e.g., P.O.D. type. |
| DIMENSION | The dimension of the array, i.e., the number of elements to be stored in the array. |
| NAMESPACE | The namespace of the array. This is a dummy parameter that is useful for creating distinct types that alias dimensioned_array. |