Blaze 3.9
Public Types | List of all members
blaze::ComplexProxy< PT, CT > Class Template Reference

Proxy backend for complex types. More...

#include <ComplexProxy.h>

Public Types

using value_type = typename CT::value_type
 Value type of the represented complex element.
 
using ValueType = value_type
 Value type of the represented complex element.
 

Public Member Functions

Data access functions
ValueType real () const
 Returns the real part of the represented complex number. More...
 
void real (ValueType value) const
 Setting the real part of the represented complex number. More...
 
ValueType imag () const
 Returns the imaginary part of the represented complex number. More...
 
void imag (ValueType value) const
 Setting the imaginary part of the represented complex number. More...
 
Conversion operators
BLAZE_ALWAYS_INLINE PT & operator~ () noexcept
 Conversion operator for non-constant proxies. More...
 
BLAZE_ALWAYS_INLINE const PT & operator~ () const noexcept
 Conversion operator for constant proxies. More...
 
BLAZE_ALWAYS_INLINE PT & operator* () noexcept
 Conversion operator for non-constant proxies. More...
 
BLAZE_ALWAYS_INLINE const PT & operator* () const noexcept
 Conversion operator for constant proxies. More...
 

Protected Member Functions

Special member functions
 ComplexProxy ()=default
 
 ComplexProxy (const ComplexProxy &)=default
 
 ComplexProxy (ComplexProxy &&)=default
 
 ~ComplexProxy ()=default
 
ComplexProxyoperator= (const ComplexProxy &)=default
 
ComplexProxyoperator= (ComplexProxy &&)=default
 

Detailed Description

template<typename PT, typename CT>
class blaze::ComplexProxy< PT, CT >

Proxy backend for complex types.

The ComplexProxy class serves as a backend for the Proxy class. It is used in case the data type represented by the proxy is a complex number and augments the Proxy interface by the complete interface required of complex numbers.

Member Function Documentation

◆ imag() [1/2]

template<typename PT , typename CT >
ComplexProxy< PT, CT >::ValueType blaze::ComplexProxy< PT, CT >::imag
inline

Returns the imaginary part of the represented complex number.

Returns
The current imaginary part of the represented complex number.

This function returns the current value of the imaginary part of the represented complex number.

◆ imag() [2/2]

template<typename PT , typename CT >
void blaze::ComplexProxy< PT, CT >::imag ( ValueType  value) const
inline

Setting the imaginary part of the represented complex number.

Parameters
valueThe new value for the imaginary part.
Returns
void

This function sets a new value to the imaginary part of the represented complex number.

◆ operator*() [1/2]

template<typename PT , typename CT >
BLAZE_ALWAYS_INLINE const PT & blaze::ComplexProxy< PT, CT >::operator*
noexcept

Conversion operator for constant proxies.

Returns
Constant reference to the actual type of the proxy.

This operator performs the CRTP-based type-safe downcast to the actual type PT of the proxy. It will return a constant reference to the actual type PT.

◆ operator*() [2/2]

template<typename PT , typename CT >
BLAZE_ALWAYS_INLINE PT & blaze::ComplexProxy< PT, CT >::operator*
noexcept

Conversion operator for non-constant proxies.

Returns
Mutable reference to the actual type of the proxy.

This operator performs the CRTP-based type-safe downcast to the actual type PT of the proxy. It will return a mutable reference to the actual type PT.

◆ operator~() [1/2]

template<typename PT , typename CT >
BLAZE_ALWAYS_INLINE const PT & blaze::ComplexProxy< PT, CT >::operator~
noexcept

Conversion operator for constant proxies.

Returns
Constant reference to the actual type of the proxy.

This operator performs the CRTP-based type-safe downcast to the actual type PT of the proxy. It will return a constant reference to the actual type PT.

◆ operator~() [2/2]

template<typename PT , typename CT >
BLAZE_ALWAYS_INLINE PT & blaze::ComplexProxy< PT, CT >::operator~
noexcept

Conversion operator for non-constant proxies.

Returns
Mutable reference to the actual type of the proxy.

This operator performs the CRTP-based type-safe downcast to the actual type PT of the proxy. It will return a mutable reference to the actual type PT.

◆ real() [1/2]

template<typename PT , typename CT >
ComplexProxy< PT, CT >::ValueType blaze::ComplexProxy< PT, CT >::real
inline

Returns the real part of the represented complex number.

Returns
The current real part of the represented complex number.

This function returns the current value of the real part of the represented complex number.

◆ real() [2/2]

template<typename PT , typename CT >
void blaze::ComplexProxy< PT, CT >::real ( ValueType  value) const
inline

Setting the real part of the represented complex number.

Parameters
valueThe new value for the real part.
Returns
void

This function sets a new value to the real part of the represented complex number.


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