tesseract++ 0.0.1
N-dimensional tensor library for embedded systems
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Static Public Attributes | List of all members
FmaExpr< A, B, C, Op > Class Template Reference

#include <FmaExpr.h>

Inheritance diagram for FmaExpr< A, B, C, Op >:
Inheritance graph
[legend]
Collaboration diagram for FmaExpr< A, B, C, Op >:
Collaboration graph
[legend]

Public Types

using value_type = typename A::value_type
 
using Layout = typename A::Layout
 

Public Member Functions

 FmaExpr (const A &a, const B &b, const C &c)
 
const A & lhs () const noexcept
 
const B & rhs () const noexcept
 
const C & addend () const noexcept
 
template<typename Output >
bool may_alias (const Output &output) const noexcept
 
template<my_size_t length>
auto operator() (my_size_t(&indices)[length]) const noexcept
 
template<typename T , my_size_t Bits, typename Arch >
Op< T, Bits, Arch >::type evalu (my_size_t flat) const noexcept
 
template<typename T , my_size_t Bits, typename Arch >
Op< T, Bits, Arch >::type logical_evalu (my_size_t logical_flat) const noexcept
 
my_size_t getNumDims () const noexcept
 
my_size_t getDim (my_size_t i) const
 
my_size_t getTotalSize () const noexcept
 
- Public Member Functions inherited from BaseExpr< FmaExpr< A, B, C, Op > >
const FmaExpr< A, B, C, Op > & derived () const
 

Static Public Attributes

static constexpr my_size_t NumDims = A::NumDims
 
static constexpr const my_size_tDim = A::Dim
 
static constexpr my_size_t TotalSize = A::TotalSize
 

Member Typedef Documentation

◆ Layout

template<typename A , typename B , typename C , template< typename, my_size_t, typename > class Op>
using FmaExpr< A, B, C, Op >::Layout = typename A::Layout

◆ value_type

template<typename A , typename B , typename C , template< typename, my_size_t, typename > class Op>
using FmaExpr< A, B, C, Op >::value_type = typename A::value_type

Constructor & Destructor Documentation

◆ FmaExpr()

template<typename A , typename B , typename C , template< typename, my_size_t, typename > class Op>
FmaExpr< A, B, C, Op >::FmaExpr ( const A &  a,
const B &  b,
const C &  c 
)
inline

Member Function Documentation

◆ addend()

template<typename A , typename B , typename C , template< typename, my_size_t, typename > class Op>
const C & FmaExpr< A, B, C, Op >::addend ( ) const
inlinenoexcept

◆ evalu()

template<typename A , typename B , typename C , template< typename, my_size_t, typename > class Op>
template<typename T , my_size_t Bits, typename Arch >
Op< T, Bits, Arch >::type FmaExpr< A, B, C, Op >::evalu ( my_size_t  flat) const
inlinenoexcept

◆ getDim()

template<typename A , typename B , typename C , template< typename, my_size_t, typename > class Op>
my_size_t FmaExpr< A, B, C, Op >::getDim ( my_size_t  i) const
inline

◆ getNumDims()

template<typename A , typename B , typename C , template< typename, my_size_t, typename > class Op>
my_size_t FmaExpr< A, B, C, Op >::getNumDims ( ) const
inlinenoexcept

◆ getTotalSize()

template<typename A , typename B , typename C , template< typename, my_size_t, typename > class Op>
my_size_t FmaExpr< A, B, C, Op >::getTotalSize ( ) const
inlinenoexcept

◆ lhs()

template<typename A , typename B , typename C , template< typename, my_size_t, typename > class Op>
const A & FmaExpr< A, B, C, Op >::lhs ( ) const
inlinenoexcept

◆ logical_evalu()

template<typename A , typename B , typename C , template< typename, my_size_t, typename > class Op>
template<typename T , my_size_t Bits, typename Arch >
Op< T, Bits, Arch >::type FmaExpr< A, B, C, Op >::logical_evalu ( my_size_t  logical_flat) const
inlinenoexcept

◆ may_alias()

template<typename A , typename B , typename C , template< typename, my_size_t, typename > class Op>
template<typename Output >
bool FmaExpr< A, B, C, Op >::may_alias ( const Output &  output) const
inlinenoexcept

◆ operator()()

template<typename A , typename B , typename C , template< typename, my_size_t, typename > class Op>
template<my_size_t length>
auto FmaExpr< A, B, C, Op >::operator() ( my_size_t(&)  indices[length]) const
inlinenoexcept

◆ rhs()

template<typename A , typename B , typename C , template< typename, my_size_t, typename > class Op>
const B & FmaExpr< A, B, C, Op >::rhs ( ) const
inlinenoexcept

Member Data Documentation

◆ Dim

template<typename A , typename B , typename C , template< typename, my_size_t, typename > class Op>
constexpr const my_size_t* FmaExpr< A, B, C, Op >::Dim = A::Dim
staticconstexpr

◆ NumDims

template<typename A , typename B , typename C , template< typename, my_size_t, typename > class Op>
constexpr my_size_t FmaExpr< A, B, C, Op >::NumDims = A::NumDims
staticconstexpr

◆ TotalSize

template<typename A , typename B , typename C , template< typename, my_size_t, typename > class Op>
constexpr my_size_t FmaExpr< A, B, C, Op >::TotalSize = A::TotalSize
staticconstexpr

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