lapacke_helpers.h File Reference
#include "./InternalHeaderCheck.h"
#include "lapacke.h"

Go to the source code of this file.

Classes

struct  Eigen::internal::lapacke_helpers::translate_type_imp< float >
 
struct  Eigen::internal::lapacke_helpers::translate_type_imp< double >
 
struct  Eigen::internal::lapacke_helpers::translate_type_imp< std::complex< double > >
 
struct  Eigen::internal::lapacke_helpers::translate_type_imp< std::complex< float > >
 
struct  Eigen::internal::lapacke_helpers::WrappingHelper< DoubleFn, SingleFn, DoubleCpxFn, SingleCpxFn >
 Helper type to facilitate the wrapping of raw LAPACKE functions for different types into a single, overloaded C++ function. This is achieved in combination with \r EIGEN_MAKE_LAPACKE_WRAPPER. More...
 

Namespaces

 Eigen
 Namespace containing all symbols from the Eigen library.
 
 Eigen::internal
 Namespace containing low-level routines from the Eigen library.
 
 Eigen::internal::lapacke_helpers
 Implementation details and helper functions for the lapacke glue code.
 

Macros

#define EIGEN_MAKE_LAPACKE_WRAPPER(FUNCTION)
 

Typedefs

template<typename Scalar >
using Eigen::internal::lapacke_helpers::translated_type = typename translate_type_imp< Scalar >::type
 Given an Eigen types, this is defined to be the corresponding, layout-compatible lapack type. More...
 

Functions

template<typename Source , typename Target = translated_type<Source>>
EIGEN_ALWAYS_INLINE auto Eigen::internal::lapacke_helpers::to_lapack (Source value)
 
template<typename Source , typename Target = translated_type<Source>>
EIGEN_ALWAYS_INLINE auto Eigen::internal::lapacke_helpers::to_lapack (Source *value)
 
EIGEN_ALWAYS_INLINE lapack_int Eigen::internal::lapacke_helpers::to_lapack (Index index)
 
template<typename Derived >
EIGEN_ALWAYS_INLINE EIGEN_CONSTEXPR lapack_int Eigen::internal::lapacke_helpers::lapack_storage_of (const EigenBase< Derived > &)
 translates storage order of the given Eigen object to the corresponding lapack constant More...
 
template<typename DoubleFn , typename SingleFn , typename DoubleCpxFn , typename SingleCpxFn , typename... Args>
EIGEN_ALWAYS_INLINE auto Eigen::internal::lapacke_helpers::call_wrapper (DoubleFn df, SingleFn sf, DoubleCpxFn dcf, SingleCpxFn scf, Args &&...args)
 

Macro Definition Documentation

◆ EIGEN_MAKE_LAPACKE_WRAPPER

#define EIGEN_MAKE_LAPACKE_WRAPPER (   FUNCTION)
Value:
template <typename... Args> \
EIGEN_ALWAYS_INLINE auto FUNCTION(Args &&...args) { \
return call_wrapper(LAPACKE_d##FUNCTION, LAPACKE_s##FUNCTION, LAPACKE_z##FUNCTION, LAPACKE_c##FUNCTION, \
std::forward<Args>(args)...); \
}
EIGEN_ALWAYS_INLINE auto call_wrapper(DoubleFn df, SingleFn sf, DoubleCpxFn dcf, SingleCpxFn scf, Args &&...args)
Definition: lapacke_helpers.h:132
args
Definition: compute_granudrum_aor.py:143

Generates a new function Function that dispatches to the corresponding LAPACKE_? prefixed functions.

See also
WrappingHelper