CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Types | Public Member Functions | Private Attributes
eigenSoA::ScalarSoA< T, S > Class Template Reference

#include <eigenSoA.h>

Public Types

using Scalar = T
 

Public Member Functions

__host__ __device__ constexpr
Scalar
data ()
 
__host__ __device__ constexpr
Scalar const * 
data () const
 
__host__ __device__ constexpr
Scalar
operator() (int32_t i)
 
__device__ constexpr const Scalar operator() (int32_t i) const
 
__host__ __device__ constexpr
Scalar
operator[] (int32_t i)
 
__device__ constexpr const Scalar operator[] (int32_t i) const
 

Private Attributes

Scalar data_ [S]
 

Detailed Description

template<typename T, int S>
class eigenSoA::ScalarSoA< T, S >

Definition at line 17 of file eigenSoA.h.

Member Typedef Documentation

template<typename T, int S>
using eigenSoA::ScalarSoA< T, S >::Scalar = T

Definition at line 19 of file eigenSoA.h.

Member Function Documentation

template<typename T, int S>
__host__ __device__ constexpr Scalar* eigenSoA::ScalarSoA< T, S >::data ( )
inline

Definition at line 26 of file eigenSoA.h.

Referenced by TrackSoAHeterogeneousT< S >::qualityData().

26 { return data_; }
Scalar data_[S]
Definition: eigenSoA.h:30
template<typename T, int S>
__host__ __device__ constexpr Scalar const* eigenSoA::ScalarSoA< T, S >::data ( ) const
inline

Definition at line 27 of file eigenSoA.h.

27 { return data_; }
Scalar data_[S]
Definition: eigenSoA.h:30
template<typename T, int S>
__host__ __device__ constexpr Scalar& eigenSoA::ScalarSoA< T, S >::operator() ( int32_t  i)
inline

Definition at line 21 of file eigenSoA.h.

21 { return data_[i]; }
Scalar data_[S]
Definition: eigenSoA.h:30
template<typename T, int S>
__device__ constexpr const Scalar eigenSoA::ScalarSoA< T, S >::operator() ( int32_t  i) const
inline

Definition at line 22 of file eigenSoA.h.

22 { return __ldg(data_ + i); }
Scalar data_[S]
Definition: eigenSoA.h:30
T __ldg(T const *x)
Definition: cudaCompat.h:113
template<typename T, int S>
__host__ __device__ constexpr Scalar& eigenSoA::ScalarSoA< T, S >::operator[] ( int32_t  i)
inline

Definition at line 23 of file eigenSoA.h.

23 { return data_[i]; }
Scalar data_[S]
Definition: eigenSoA.h:30
template<typename T, int S>
__device__ constexpr const Scalar eigenSoA::ScalarSoA< T, S >::operator[] ( int32_t  i) const
inline

Definition at line 24 of file eigenSoA.h.

24 { return __ldg(data_ + i); }
Scalar data_[S]
Definition: eigenSoA.h:30
T __ldg(T const *x)
Definition: cudaCompat.h:113

Member Data Documentation

template<typename T, int S>
Scalar eigenSoA::ScalarSoA< T, S >::data_[S]
private