tesseract++ 0.0.1
N-dimensional tensor library for embedded systems
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | List of all members
StridedLayout< NumberOfDims > Struct Template Reference

#include <strided_layout.h>

Inheritance diagram for StridedLayout< NumberOfDims >:
Inheritance graph
[legend]

Public Member Functions

 StridedLayout (const my_size_t dims[NumberOfDims]) noexcept
 
 StridedLayout (const StridedLayout &other)=default
 
 StridedLayout (StridedLayout &&other)=default
 
StridedLayoutoperator= (const StridedLayout &other)=default
 
StridedLayoutoperator= (StridedLayout &&other)=default
 
FORCE_INLINE constexpr my_size_t getNumDims () const noexcept
 
FORCE_INLINE my_size_t getDim (my_size_t i) const
 
FORCE_INLINE my_size_t getStride (my_size_t i) const
 
void compute_row_major_strides () noexcept
 
FORCE_INLINE void compute_indices_from_flat (my_size_t flatIdx, my_size_t(&indices)[NumberOfDims]) const noexcept
 
FORCE_INLINE my_size_t compute_flat_index (const my_size_t *indices) const
 
FORCE_INLINE my_size_t computeOffsetFromFlat (my_size_t flat) const noexcept
 

Public Attributes

my_size_t shape [NumberOfDims]
 
my_size_t stride [NumberOfDims]
 

Constructor & Destructor Documentation

◆ StridedLayout() [1/3]

template<my_size_t NumberOfDims>
StridedLayout< NumberOfDims >::StridedLayout ( const my_size_t  dims[NumberOfDims])
inlinenoexcept
Here is the call graph for this function:

◆ StridedLayout() [2/3]

template<my_size_t NumberOfDims>
StridedLayout< NumberOfDims >::StridedLayout ( const StridedLayout< NumberOfDims > &  other)
default

◆ StridedLayout() [3/3]

template<my_size_t NumberOfDims>
StridedLayout< NumberOfDims >::StridedLayout ( StridedLayout< NumberOfDims > &&  other)
default

Member Function Documentation

◆ compute_flat_index()

template<my_size_t NumberOfDims>
FORCE_INLINE my_size_t StridedLayout< NumberOfDims >::compute_flat_index ( const my_size_t indices) const
inline
Here is the call graph for this function:

◆ compute_indices_from_flat()

template<my_size_t NumberOfDims>
FORCE_INLINE void StridedLayout< NumberOfDims >::compute_indices_from_flat ( my_size_t  flatIdx,
my_size_t(&)  indices[NumberOfDims] 
) const
inlinenoexcept
Here is the call graph for this function:

◆ compute_row_major_strides()

template<my_size_t NumberOfDims>
void StridedLayout< NumberOfDims >::compute_row_major_strides ( )
inlinenoexcept
Here is the call graph for this function:

◆ computeOffsetFromFlat()

template<my_size_t NumberOfDims>
FORCE_INLINE my_size_t StridedLayout< NumberOfDims >::computeOffsetFromFlat ( my_size_t  flat) const
inlinenoexcept
Here is the call graph for this function:

◆ getDim()

template<my_size_t NumberOfDims>
FORCE_INLINE my_size_t StridedLayout< NumberOfDims >::getDim ( my_size_t  i) const
inline
Here is the call graph for this function:

◆ getNumDims()

template<my_size_t NumberOfDims>
FORCE_INLINE constexpr my_size_t StridedLayout< NumberOfDims >::getNumDims ( ) const
inlineconstexprnoexcept

◆ getStride()

template<my_size_t NumberOfDims>
FORCE_INLINE my_size_t StridedLayout< NumberOfDims >::getStride ( my_size_t  i) const
inline
Here is the call graph for this function:

◆ operator=() [1/2]

template<my_size_t NumberOfDims>
StridedLayout & StridedLayout< NumberOfDims >::operator= ( const StridedLayout< NumberOfDims > &  other)
default

◆ operator=() [2/2]

template<my_size_t NumberOfDims>
StridedLayout & StridedLayout< NumberOfDims >::operator= ( StridedLayout< NumberOfDims > &&  other)
default

Member Data Documentation

◆ shape

template<my_size_t NumberOfDims>
my_size_t StridedLayout< NumberOfDims >::shape[NumberOfDims]

◆ stride

template<my_size_t NumberOfDims>
my_size_t StridedLayout< NumberOfDims >::stride[NumberOfDims]

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