DPC++ Runtime
Runtime libraries for oneAPI DPC++
sycl::_V1::ext::oneapi::experimental::complex< _Tp, typename std::enable_if_t< is_genfloat< _Tp >::value > > Class Template Reference

#include <sycl/ext/oneapi/experimental/complex/detail/complex.hpp>

Public Types

typedef _Tp value_type
 

Public Member Functions

constexpr _SYCL_EXT_CPLX_INLINE_VISIBILITY complex (value_type __re=value_type(), value_type __im=value_type())
 
template<typename _Xp >
constexpr _SYCL_EXT_CPLX_INLINE_VISIBILITY complex (const complex< _Xp > &__c)
 
template<class _Xp , typename = std::enable_if_t<is_genfloat<_Xp>::value>>
constexpr _SYCL_EXT_CPLX_INLINE_VISIBILITY complex (const std::complex< _Xp > &__c)
 
template<class _Xp , typename = std::enable_if_t<is_genfloat<_Xp>::value>>
constexpr _SYCL_EXT_CPLX_INLINE_VISIBILITY operator std::complex< _Xp > () const
 
constexpr _SYCL_EXT_CPLX_INLINE_VISIBILITY value_type real () const
 
constexpr _SYCL_EXT_CPLX_INLINE_VISIBILITY value_type imag () const
 
_SYCL_EXT_CPLX_INLINE_VISIBILITY void real (value_type __re)
 
_SYCL_EXT_CPLX_INLINE_VISIBILITY void imag (value_type __im)
 
_SYCL_EXT_CPLX_INLINE_VISIBILITY complexoperator= (value_type __re)
 
template<class _Xp >
_SYCL_EXT_CPLX_INLINE_VISIBILITY complexoperator= (const complex< _Xp > &__c)
 

Friends

_SYCL_EXT_CPLX_INLINE_VISIBILITY friend complexoperator+= (complex< value_type > &__c, value_type __re)
 
_SYCL_EXT_CPLX_INLINE_VISIBILITY friend complexoperator-= (complex< value_type > &__c, value_type __re)
 
_SYCL_EXT_CPLX_INLINE_VISIBILITY friend complexoperator*= (complex< value_type > &__c, value_type __re)
 
_SYCL_EXT_CPLX_INLINE_VISIBILITY friend complexoperator/= (complex< value_type > &__c, value_type __re)
 
template<class _Xp >
_SYCL_EXT_CPLX_INLINE_VISIBILITY friend complexoperator+= (complex< value_type > &__x, const complex< _Xp > &__y)
 
template<class _Xp >
_SYCL_EXT_CPLX_INLINE_VISIBILITY friend complexoperator-= (complex< value_type > &__x, const complex< _Xp > &__y)
 
template<class _Xp >
_SYCL_EXT_CPLX_INLINE_VISIBILITY friend complexoperator*= (complex< value_type > &__x, const complex< _Xp > &__y)
 
template<class _Xp >
_SYCL_EXT_CPLX_INLINE_VISIBILITY friend complexoperator/= (complex< value_type > &__x, const complex< _Xp > &__y)
 
_SYCL_EXT_CPLX_INLINE_VISIBILITY friend complex< value_typeoperator+ (const complex< value_type > &__x, const complex< value_type > &__y)
 
_SYCL_EXT_CPLX_INLINE_VISIBILITY friend complex< value_typeoperator+ (const complex< value_type > &__x, value_type __y)
 
_SYCL_EXT_CPLX_INLINE_VISIBILITY friend complex< value_typeoperator+ (value_type __x, const complex< value_type > &__y)
 
_SYCL_EXT_CPLX_INLINE_VISIBILITY friend complex< value_typeoperator+ (const complex< value_type > &__x)
 
_SYCL_EXT_CPLX_INLINE_VISIBILITY friend complex< value_typeoperator- (const complex< value_type > &__x, const complex< value_type > &__y)
 
_SYCL_EXT_CPLX_INLINE_VISIBILITY friend complex< value_typeoperator- (const complex< value_type > &__x, value_type __y)
 
_SYCL_EXT_CPLX_INLINE_VISIBILITY friend complex< value_typeoperator- (value_type __x, const complex< value_type > &__y)
 
_SYCL_EXT_CPLX_INLINE_VISIBILITY friend complex< value_typeoperator- (const complex< value_type > &__x)
 
_SYCL_EXT_CPLX_INLINE_VISIBILITY friend complex< value_typeoperator* (const complex< value_type > &__z, const complex< value_type > &__w)
 
_SYCL_EXT_CPLX_INLINE_VISIBILITY friend complex< value_typeoperator* (const complex< value_type > &__x, value_type __y)
 
_SYCL_EXT_CPLX_INLINE_VISIBILITY friend complex< value_typeoperator* (value_type __x, const complex< value_type > &__y)
 
_SYCL_EXT_CPLX_INLINE_VISIBILITY friend complex< value_typeoperator/ (const complex< value_type > &__z, const complex< value_type > &__w)
 
_SYCL_EXT_CPLX_INLINE_VISIBILITY friend complex< value_typeoperator/ (const complex< value_type > &__x, value_type __y)
 
_SYCL_EXT_CPLX_INLINE_VISIBILITY friend complex< value_typeoperator/ (value_type __x, const complex< value_type > &__y)
 
_SYCL_EXT_CPLX_INLINE_VISIBILITY constexpr friend bool operator== (const complex< value_type > &__x, const complex< value_type > &__y)
 
_SYCL_EXT_CPLX_INLINE_VISIBILITY constexpr friend bool operator== (const complex< value_type > &__x, value_type __y)
 
_SYCL_EXT_CPLX_INLINE_VISIBILITY constexpr friend bool operator== (value_type __x, const complex< value_type > &__y)
 
_SYCL_EXT_CPLX_INLINE_VISIBILITY constexpr friend bool operator!= (const complex< value_type > &__x, const complex< value_type > &__y)
 
_SYCL_EXT_CPLX_INLINE_VISIBILITY constexpr friend bool operator!= (const complex< value_type > &__x, value_type __y)
 
_SYCL_EXT_CPLX_INLINE_VISIBILITY constexpr friend bool operator!= (value_type __x, const complex< value_type > &__y)
 
template<class _CharT , class _Traits >
_SYCL_EXT_CPLX_INLINE_VISIBILITY friend std::basic_istream< _CharT, _Traits > & operator>> (std::basic_istream< _CharT, _Traits > &__is, complex< value_type > &__x)
 
template<class _CharT , class _Traits >
_SYCL_EXT_CPLX_INLINE_VISIBILITY friend std::basic_ostream< _CharT, _Traits > & operator<< (std::basic_ostream< _CharT, _Traits > &__os, const complex< value_type > &__x)
 
_SYCL_EXT_CPLX_INLINE_VISIBILITY friend const sycl::stream & operator<< (const sycl::stream &__ss, const complex< value_type > &_x)
 

Detailed Description

template<class _Tp>
class sycl::_V1::ext::oneapi::experimental::complex< _Tp, typename std::enable_if_t< is_genfloat< _Tp >::value > >

Definition at line 25 of file complex.hpp.

Member Typedef Documentation

◆ value_type

template<class _Tp >
typedef _Tp sycl::_V1::ext::oneapi::experimental::complex< _Tp, typename std::enable_if_t< is_genfloat< _Tp >::value > >::value_type

Definition at line 27 of file complex.hpp.

Constructor & Destructor Documentation

◆ complex() [1/3]

template<class _Tp >
constexpr _SYCL_EXT_CPLX_INLINE_VISIBILITY sycl::_V1::ext::oneapi::experimental::complex< _Tp, typename std::enable_if_t< is_genfloat< _Tp >::value > >::complex ( value_type  __re = value_type(),
value_type  __im = value_type() 
)
inlineconstexpr

Definition at line 34 of file complex.hpp.

◆ complex() [2/3]

template<class _Tp >
template<typename _Xp >
constexpr _SYCL_EXT_CPLX_INLINE_VISIBILITY sycl::_V1::ext::oneapi::experimental::complex< _Tp, typename std::enable_if_t< is_genfloat< _Tp >::value > >::complex ( const complex< _Xp > &  __c)
inlineconstexpr

Definition at line 39 of file complex.hpp.

◆ complex() [3/3]

template<class _Tp >
template<class _Xp , typename = std::enable_if_t<is_genfloat<_Xp>::value>>
constexpr _SYCL_EXT_CPLX_INLINE_VISIBILITY sycl::_V1::ext::oneapi::experimental::complex< _Tp, typename std::enable_if_t< is_genfloat< _Tp >::value > >::complex ( const std::complex< _Xp > &  __c)
inlineconstexpr

Definition at line 43 of file complex.hpp.

Member Function Documentation

◆ imag() [1/2]

template<class _Tp >
constexpr _SYCL_EXT_CPLX_INLINE_VISIBILITY value_type sycl::_V1::ext::oneapi::experimental::complex< _Tp, typename std::enable_if_t< is_genfloat< _Tp >::value > >::imag ( ) const
inlineconstexpr

Definition at line 57 of file complex.hpp.

◆ imag() [2/2]

template<class _Tp >
_SYCL_EXT_CPLX_INLINE_VISIBILITY void sycl::_V1::ext::oneapi::experimental::complex< _Tp, typename std::enable_if_t< is_genfloat< _Tp >::value > >::imag ( value_type  __im)
inline

Definition at line 62 of file complex.hpp.

◆ operator std::complex< _Xp >()

template<class _Tp >
template<class _Xp , typename = std::enable_if_t<is_genfloat<_Xp>::value>>
constexpr _SYCL_EXT_CPLX_INLINE_VISIBILITY sycl::_V1::ext::oneapi::experimental::complex< _Tp, typename std::enable_if_t< is_genfloat< _Tp >::value > >::operator std::complex< _Xp > ( ) const
inlineconstexpr

Definition at line 50 of file complex.hpp.

◆ operator=() [1/2]

template<class _Tp >
template<class _Xp >
_SYCL_EXT_CPLX_INLINE_VISIBILITY complex& sycl::_V1::ext::oneapi::experimental::complex< _Tp, typename std::enable_if_t< is_genfloat< _Tp >::value > >::operator= ( const complex< _Xp > &  __c)
inline

Definition at line 93 of file complex.hpp.

◆ operator=() [2/2]

template<class _Tp >
_SYCL_EXT_CPLX_INLINE_VISIBILITY complex& sycl::_V1::ext::oneapi::experimental::complex< _Tp, typename std::enable_if_t< is_genfloat< _Tp >::value > >::operator= ( value_type  __re)
inline

Definition at line 64 of file complex.hpp.

◆ real() [1/2]

template<class _Tp >
constexpr _SYCL_EXT_CPLX_INLINE_VISIBILITY value_type sycl::_V1::ext::oneapi::experimental::complex< _Tp, typename std::enable_if_t< is_genfloat< _Tp >::value > >::real ( ) const
inlineconstexpr

Definition at line 54 of file complex.hpp.

◆ real() [2/2]

template<class _Tp >
_SYCL_EXT_CPLX_INLINE_VISIBILITY void sycl::_V1::ext::oneapi::experimental::complex< _Tp, typename std::enable_if_t< is_genfloat< _Tp >::value > >::real ( value_type  __re)
inline

Definition at line 61 of file complex.hpp.

Friends And Related Function Documentation

◆ operator!= [1/3]

template<class _Tp >
_SYCL_EXT_CPLX_INLINE_VISIBILITY constexpr friend bool operator!= ( const complex< value_type > &  __x,
const complex< value_type > &  __y 
)
friend

Definition at line 306 of file complex.hpp.

◆ operator!= [2/3]

template<class _Tp >
_SYCL_EXT_CPLX_INLINE_VISIBILITY constexpr friend bool operator!= ( const complex< value_type > &  __x,
value_type  __y 
)
friend

Definition at line 310 of file complex.hpp.

◆ operator!= [3/3]

template<class _Tp >
_SYCL_EXT_CPLX_INLINE_VISIBILITY constexpr friend bool operator!= ( value_type  __x,
const complex< value_type > &  __y 
)
friend

Definition at line 314 of file complex.hpp.

◆ operator* [1/3]

template<class _Tp >
_SYCL_EXT_CPLX_INLINE_VISIBILITY friend complex<value_type> operator* ( const complex< value_type > &  __x,
value_type  __y 
)
friend

Definition at line 227 of file complex.hpp.

◆ operator* [2/3]

template<class _Tp >
_SYCL_EXT_CPLX_INLINE_VISIBILITY friend complex<value_type> operator* ( const complex< value_type > &  __z,
const complex< value_type > &  __w 
)
friend

Definition at line 172 of file complex.hpp.

◆ operator* [3/3]

template<class _Tp >
_SYCL_EXT_CPLX_INLINE_VISIBILITY friend complex<value_type> operator* ( value_type  __x,
const complex< value_type > &  __y 
)
friend

Definition at line 233 of file complex.hpp.

◆ operator*= [1/2]

template<class _Tp >
_SYCL_EXT_CPLX_INLINE_VISIBILITY friend complex& operator*= ( complex< value_type > &  __c,
value_type  __re 
)
friend

Definition at line 80 of file complex.hpp.

◆ operator*= [2/2]

template<class _Tp >
template<class _Xp >
_SYCL_EXT_CPLX_INLINE_VISIBILITY friend complex& operator*= ( complex< value_type > &  __x,
const complex< _Xp > &  __y 
)
friend

Definition at line 114 of file complex.hpp.

◆ operator+ [1/4]

template<class _Tp >
_SYCL_EXT_CPLX_INLINE_VISIBILITY friend complex<value_type> operator+ ( const complex< value_type > &  __x)
friend

Definition at line 144 of file complex.hpp.

◆ operator+ [2/4]

template<class _Tp >
_SYCL_EXT_CPLX_INLINE_VISIBILITY friend complex<value_type> operator+ ( const complex< value_type > &  __x,
const complex< value_type > &  __y 
)
friend

Definition at line 126 of file complex.hpp.

◆ operator+ [3/4]

template<class _Tp >
_SYCL_EXT_CPLX_INLINE_VISIBILITY friend complex<value_type> operator+ ( const complex< value_type > &  __x,
value_type  __y 
)
friend

Definition at line 132 of file complex.hpp.

◆ operator+ [4/4]

template<class _Tp >
_SYCL_EXT_CPLX_INLINE_VISIBILITY friend complex<value_type> operator+ ( value_type  __x,
const complex< value_type > &  __y 
)
friend

Definition at line 138 of file complex.hpp.

◆ operator+= [1/2]

template<class _Tp >
_SYCL_EXT_CPLX_INLINE_VISIBILITY friend complex& operator+= ( complex< value_type > &  __c,
value_type  __re 
)
friend

Definition at line 70 of file complex.hpp.

◆ operator+= [2/2]

template<class _Tp >
template<class _Xp >
_SYCL_EXT_CPLX_INLINE_VISIBILITY friend complex& operator+= ( complex< value_type > &  __x,
const complex< _Xp > &  __y 
)
friend

Definition at line 100 of file complex.hpp.

◆ operator- [1/4]

template<class _Tp >
_SYCL_EXT_CPLX_INLINE_VISIBILITY friend complex<value_type> operator- ( const complex< value_type > &  __x)
friend

Definition at line 167 of file complex.hpp.

◆ operator- [2/4]

template<class _Tp >
_SYCL_EXT_CPLX_INLINE_VISIBILITY friend complex<value_type> operator- ( const complex< value_type > &  __x,
const complex< value_type > &  __y 
)
friend

Definition at line 149 of file complex.hpp.

◆ operator- [3/4]

template<class _Tp >
_SYCL_EXT_CPLX_INLINE_VISIBILITY friend complex<value_type> operator- ( const complex< value_type > &  __x,
value_type  __y 
)
friend

Definition at line 155 of file complex.hpp.

◆ operator- [4/4]

template<class _Tp >
_SYCL_EXT_CPLX_INLINE_VISIBILITY friend complex<value_type> operator- ( value_type  __x,
const complex< value_type > &  __y 
)
friend

Definition at line 161 of file complex.hpp.

◆ operator-= [1/2]

template<class _Tp >
_SYCL_EXT_CPLX_INLINE_VISIBILITY friend complex& operator-= ( complex< value_type > &  __c,
value_type  __re 
)
friend

Definition at line 75 of file complex.hpp.

◆ operator-= [2/2]

template<class _Tp >
template<class _Xp >
_SYCL_EXT_CPLX_INLINE_VISIBILITY friend complex& operator-= ( complex< value_type > &  __x,
const complex< _Xp > &  __y 
)
friend

Definition at line 107 of file complex.hpp.

◆ operator/ [1/3]

template<class _Tp >
_SYCL_EXT_CPLX_INLINE_VISIBILITY friend complex<value_type> operator/ ( const complex< value_type > &  __x,
value_type  __y 
)
friend

Definition at line 282 of file complex.hpp.

◆ operator/ [2/3]

template<class _Tp >
_SYCL_EXT_CPLX_INLINE_VISIBILITY friend complex<value_type> operator/ ( const complex< value_type > &  __z,
const complex< value_type > &  __w 
)
friend

Definition at line 240 of file complex.hpp.

◆ operator/ [3/3]

template<class _Tp >
_SYCL_EXT_CPLX_INLINE_VISIBILITY friend complex<value_type> operator/ ( value_type  __x,
const complex< value_type > &  __y 
)
friend

Definition at line 286 of file complex.hpp.

◆ operator/= [1/2]

template<class _Tp >
_SYCL_EXT_CPLX_INLINE_VISIBILITY friend complex& operator/= ( complex< value_type > &  __c,
value_type  __re 
)
friend

Definition at line 86 of file complex.hpp.

◆ operator/= [2/2]

template<class _Tp >
template<class _Xp >
_SYCL_EXT_CPLX_INLINE_VISIBILITY friend complex& operator/= ( complex< value_type > &  __x,
const complex< _Xp > &  __y 
)
friend

Definition at line 120 of file complex.hpp.

◆ operator<< [1/2]

template<class _Tp >
_SYCL_EXT_CPLX_INLINE_VISIBILITY friend const sycl::stream& operator<< ( const sycl::stream &  __ss,
const complex< value_type > &  _x 
)
friend

Definition at line 377 of file complex.hpp.

◆ operator<< [2/2]

template<class _Tp >
template<class _CharT , class _Traits >
_SYCL_EXT_CPLX_INLINE_VISIBILITY friend std::basic_ostream<_CharT, _Traits>& operator<< ( std::basic_ostream< _CharT, _Traits > &  __os,
const complex< value_type > &  __x 
)
friend

Definition at line 366 of file complex.hpp.

◆ operator== [1/3]

template<class _Tp >
_SYCL_EXT_CPLX_INLINE_VISIBILITY constexpr friend bool operator== ( const complex< value_type > &  __x,
const complex< value_type > &  __y 
)
friend

Definition at line 293 of file complex.hpp.

◆ operator== [2/3]

template<class _Tp >
_SYCL_EXT_CPLX_INLINE_VISIBILITY constexpr friend bool operator== ( const complex< value_type > &  __x,
value_type  __y 
)
friend

Definition at line 297 of file complex.hpp.

◆ operator== [3/3]

template<class _Tp >
_SYCL_EXT_CPLX_INLINE_VISIBILITY constexpr friend bool operator== ( value_type  __x,
const complex< value_type > &  __y 
)
friend

Definition at line 301 of file complex.hpp.

◆ operator>>

template<class _Tp >
template<class _CharT , class _Traits >
_SYCL_EXT_CPLX_INLINE_VISIBILITY friend std::basic_istream<_CharT, _Traits>& operator>> ( std::basic_istream< _CharT, _Traits > &  __is,
complex< value_type > &  __x 
)
friend

Definition at line 320 of file complex.hpp.


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