Blaze 3.9
DeclId.h
Go to the documentation of this file.
1//=================================================================================================
33//=================================================================================================
34
35#ifndef _BLAZE_MATH_FUNCTORS_DECLID_H_
36#define _BLAZE_MATH_FUNCTORS_DECLID_H_
37
38
39//*************************************************************************************************
40// Includes
41//*************************************************************************************************
42
43#include <utility>
45#include <blaze/system/Inline.h>
46
47
48namespace blaze {
49
50//=================================================================================================
51//
52// CLASS DEFINITION
53//
54//=================================================================================================
55
56//*************************************************************************************************
60struct DeclId
61{
62 //**********************************************************************************************
68 template< typename T >
69 BLAZE_ALWAYS_INLINE BLAZE_DEVICE_CALLABLE decltype(auto) operator()( T&& a ) const
70 {
71 return declid( std::forward<T>( a ) );
72 }
73 //**********************************************************************************************
74};
75//*************************************************************************************************
76
77} // namespace blaze
78
79#endif
Macro for CUDA compatibility.
IdentityMatrix< ElementType_t< MT >, SO > declid(const Matrix< MT, SO > &m)
Declares the given matrix expression m as identity matrix.
Definition: IdentityMatrix.h:1285
#define BLAZE_ALWAYS_INLINE
Platform dependent setup of an enforced inline keyword.
Definition: Inline.h:85
#define BLAZE_DEVICE_CALLABLE
Conditional macro that sets host and device attributes when compiled with CUDA.
Definition: HostDevice.h:94
Generic wrapper for the declid() function.
Definition: DeclId.h:61
System settings for the inline keywords.