RAJA
RAJA provides a collection of platform portability abstractions for C++ HPC applications.
Public Types | Public Member Functions | Static Public Member Functions | List of all members
RAJA::expt::TensorIndex< IDX, TENSOR_TYPE, DIM > Class Template Reference

#include <TensorIndex.hpp>

Public Types

using self_type = TensorIndex< IDX, TENSOR_TYPE, DIM >
 
using value_type = strip_index_type_t< IDX >
 
using index_type = IDX
 
using tensor_type = TENSOR_TYPE
 

Public Member Functions

RAJA_INLINE constexpr RAJA_HOST_DEVICE TensorIndex ()
 
RAJA_INLINE constexpr RAJA_HOST_DEVICE TensorIndex (RAJA::TypedRangeSegment< IDX > const &seg)
 
RAJA_INLINE constexpr RAJA_HOST_DEVICE TensorIndex (index_type value, value_type length)
 
template<typename T , camp::idx_t D>
RAJA_INLINE constexpr RAJA_HOST_DEVICE TensorIndex (TensorIndex< IDX, T, D > const &c)
 
template<value_type IDX_VAL, value_type LEN_VAL>
RAJA_INLINE constexpr RAJA_HOST_DEVICE TensorIndex (StaticTensorIndex< StaticTensorIndexInner< IDX, TENSOR_TYPE, DIM, IDX_VAL, LEN_VAL >> const RAJA_UNUSED_ARG(&c))
 
RAJA_INLINE constexpr RAJA_HOST_DEVICE index_type const & operator* () const
 
RAJA_INLINE constexpr RAJA_HOST_DEVICE operator index_type () const
 
RAJA_INLINE constexpr RAJA_HOST_DEVICE index_type begin () const
 
RAJA_INLINE constexpr RAJA_HOST_DEVICE value_type size () const
 
RAJA_INLINE constexpr RAJA_HOST_DEVICE value_type dim () const
 

Static Public Member Functions

RAJA_INLINE static constexpr RAJA_HOST_DEVICE self_type all ()
 
RAJA_INLINE static constexpr RAJA_HOST_DEVICE StaticTensorIndex< StaticTensorIndexInner< IDX, TENSOR_TYPE, DIM, value_type(-1), value_type(-1)> > static_all ()
 
RAJA_INLINE static constexpr RAJA_HOST_DEVICE self_type range (index_type begin, index_type end)
 
template<value_type TBEGIN, value_type TEND>
RAJA_INLINE static constexpr RAJA_HOST_DEVICE StaticTensorIndex< StaticTensorIndexInner< IDX, TENSOR_TYPE, DIM, TBEGIN, TEND - TBEGIN > > static_range ()
 

Member Typedef Documentation

◆ self_type

template<typename IDX , typename TENSOR_TYPE , camp::idx_t DIM>
using RAJA::expt::TensorIndex< IDX, TENSOR_TYPE, DIM >::self_type = TensorIndex<IDX, TENSOR_TYPE, DIM>

◆ value_type

template<typename IDX , typename TENSOR_TYPE , camp::idx_t DIM>
using RAJA::expt::TensorIndex< IDX, TENSOR_TYPE, DIM >::value_type = strip_index_type_t<IDX>

◆ index_type

template<typename IDX , typename TENSOR_TYPE , camp::idx_t DIM>
using RAJA::expt::TensorIndex< IDX, TENSOR_TYPE, DIM >::index_type = IDX

◆ tensor_type

template<typename IDX , typename TENSOR_TYPE , camp::idx_t DIM>
using RAJA::expt::TensorIndex< IDX, TENSOR_TYPE, DIM >::tensor_type = TENSOR_TYPE

Constructor & Destructor Documentation

◆ TensorIndex() [1/5]

template<typename IDX , typename TENSOR_TYPE , camp::idx_t DIM>
RAJA_INLINE constexpr RAJA_HOST_DEVICE RAJA::expt::TensorIndex< IDX, TENSOR_TYPE, DIM >::TensorIndex ( )
inlineconstexpr

◆ TensorIndex() [2/5]

template<typename IDX , typename TENSOR_TYPE , camp::idx_t DIM>
RAJA_INLINE constexpr RAJA_HOST_DEVICE RAJA::expt::TensorIndex< IDX, TENSOR_TYPE, DIM >::TensorIndex ( RAJA::TypedRangeSegment< IDX > const &  seg)
inlineconstexpr

◆ TensorIndex() [3/5]

template<typename IDX , typename TENSOR_TYPE , camp::idx_t DIM>
RAJA_INLINE constexpr RAJA_HOST_DEVICE RAJA::expt::TensorIndex< IDX, TENSOR_TYPE, DIM >::TensorIndex ( index_type  value,
value_type  length 
)
inlineconstexpr

◆ TensorIndex() [4/5]

template<typename IDX , typename TENSOR_TYPE , camp::idx_t DIM>
template<typename T , camp::idx_t D>
RAJA_INLINE constexpr RAJA_HOST_DEVICE RAJA::expt::TensorIndex< IDX, TENSOR_TYPE, DIM >::TensorIndex ( TensorIndex< IDX, T, D > const &  c)
inlineconstexpr

◆ TensorIndex() [5/5]

template<typename IDX , typename TENSOR_TYPE , camp::idx_t DIM>
template<value_type IDX_VAL, value_type LEN_VAL>
RAJA_INLINE constexpr RAJA_HOST_DEVICE RAJA::expt::TensorIndex< IDX, TENSOR_TYPE, DIM >::TensorIndex ( StaticTensorIndex< StaticTensorIndexInner< IDX, TENSOR_TYPE, DIM, IDX_VAL, LEN_VAL >> const RAJA_UNUSED_ARG c)
inlineconstexpr

Member Function Documentation

◆ all()

template<typename IDX , typename TENSOR_TYPE , camp::idx_t DIM>
RAJA_INLINE static constexpr RAJA_HOST_DEVICE self_type RAJA::expt::TensorIndex< IDX, TENSOR_TYPE, DIM >::all ( )
inlinestaticconstexpr

◆ static_all()

template<typename IDX , typename TENSOR_TYPE , camp::idx_t DIM>
RAJA_INLINE static constexpr RAJA_HOST_DEVICE StaticTensorIndex<StaticTensorIndexInner<IDX, TENSOR_TYPE, DIM, value_type(-1), value_type(-1)> > RAJA::expt::TensorIndex< IDX, TENSOR_TYPE, DIM >::static_all ( )
inlinestaticconstexpr

◆ range()

template<typename IDX , typename TENSOR_TYPE , camp::idx_t DIM>
RAJA_INLINE static constexpr RAJA_HOST_DEVICE self_type RAJA::expt::TensorIndex< IDX, TENSOR_TYPE, DIM >::range ( index_type  begin,
index_type  end 
)
inlinestaticconstexpr

◆ static_range()

template<typename IDX , typename TENSOR_TYPE , camp::idx_t DIM>
template<value_type TBEGIN, value_type TEND>
RAJA_INLINE static constexpr RAJA_HOST_DEVICE StaticTensorIndex< StaticTensorIndexInner<IDX, TENSOR_TYPE, DIM, TBEGIN, TEND - TBEGIN> > RAJA::expt::TensorIndex< IDX, TENSOR_TYPE, DIM >::static_range ( )
inlinestaticconstexpr

◆ operator*()

template<typename IDX , typename TENSOR_TYPE , camp::idx_t DIM>
RAJA_INLINE constexpr RAJA_HOST_DEVICE index_type const& RAJA::expt::TensorIndex< IDX, TENSOR_TYPE, DIM >::operator* ( ) const
inlineconstexpr

◆ operator index_type()

template<typename IDX , typename TENSOR_TYPE , camp::idx_t DIM>
RAJA_INLINE constexpr RAJA_HOST_DEVICE RAJA::expt::TensorIndex< IDX, TENSOR_TYPE, DIM >::operator index_type ( ) const
inlineexplicitconstexpr

◆ begin()

template<typename IDX , typename TENSOR_TYPE , camp::idx_t DIM>
RAJA_INLINE constexpr RAJA_HOST_DEVICE index_type RAJA::expt::TensorIndex< IDX, TENSOR_TYPE, DIM >::begin ( ) const
inlineconstexpr

◆ size()

template<typename IDX , typename TENSOR_TYPE , camp::idx_t DIM>
RAJA_INLINE constexpr RAJA_HOST_DEVICE value_type RAJA::expt::TensorIndex< IDX, TENSOR_TYPE, DIM >::size ( ) const
inlineconstexpr

◆ dim()

template<typename IDX , typename TENSOR_TYPE , camp::idx_t DIM>
RAJA_INLINE constexpr RAJA_HOST_DEVICE value_type RAJA::expt::TensorIndex< IDX, TENSOR_TYPE, DIM >::dim ( ) const
inlineconstexpr

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