IPPL API Reference
Independent Parallel Particle Layer C++ API
Loading...
Searching...
No Matches
ippl::detail::Scalar< T > Struct Template Reference

#include <IpplExpressions.h>

+ Inheritance diagram for ippl::detail::Scalar< T >:
+ Collaboration diagram for ippl::detail::Scalar< T >:

Public Types

typedef T value_type
 

Public Member Functions

KOKKOS_FUNCTION Scalar (value_type val)
 
KOKKOS_INLINE_FUNCTION value_type operator[] (size_t) const
 
template<typename... Args>
KOKKOS_INLINE_FUNCTION auto operator() (Args...) const
 
- Public Member Functions inherited from ippl::detail::Expression< Scalar< T >, sizeof(T)>
KOKKOS_INLINE_FUNCTION auto operator[] (size_t i) const
 

Static Public Attributes

static constexpr unsigned dim = 0
 
- Static Public Attributes inherited from ippl::detail::Expression< Scalar< T >, sizeof(T)>
static constexpr unsigned dim
 

Detailed Description

template<typename T>
struct ippl::detail::Scalar< T >

Expression for intrinsic data types. They are both regular expressions and field expressions.

Member Function Documentation

◆ operator()()

template<typename T >
template<typename... Args>
KOKKOS_INLINE_FUNCTION auto ippl::detail::Scalar< T >::operator() ( Args...  ) const
inline

Access the scalar value with multiple indices. This is used for binary operations between Scalar and BareField, Scalar and BareField, and Scalar and Field.

◆ operator[]()

template<typename T >
KOKKOS_INLINE_FUNCTION value_type ippl::detail::Scalar< T >::operator[] ( size_t  ) const
inline

Access the scalar value with single index. This is used for binary operations between Scalar and Vector.


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