Fermat
Public Types | Public Methods | Public Members | List of all members
cugar::cuda::store_reference< T, STORE_MOD, LOAD_MOD > Struct Template Reference

Detailed description

template<typename T, CacheStoreModifier STORE_MOD, CacheLoadModifier LOAD_MOD = LOAD_DEFAULT>
struct cugar::cuda::store_reference< T, STORE_MOD, LOAD_MOD >

Wrapper class to create a cub::ThreadStore reference out of a raw pointer

#include <pointers.h>

Public Types

typedef T value_type
 

Public Methods

CUGAR_FORCEINLINE CUGAR_HOST_DEVICE store_reference ()
 
CUGAR_FORCEINLINE CUGAR_HOST_DEVICE store_reference (T *base)
 
CUGAR_FORCEINLINE CUGAR_HOST_DEVICE store_reference (const store_reference &it)
 
CUGAR_FORCEINLINE CUGAR_HOST_DEVICE store_referenceoperator= (const value_type value)
 
CUGAR_FORCEINLINE CUGAR_HOST_DEVICE operator value_type ()
 
CUGAR_FORCEINLINE CUGAR_HOST_DEVICE store_referenceoperator+= (const value_type value)
 
CUGAR_FORCEINLINE CUGAR_HOST_DEVICE store_referenceoperator-= (const value_type value)
 

Public Members

T * m_base
 

Constructor & Destructor Documentation

◆ store_reference() [1/3]

template<typename T , CacheStoreModifier STORE_MOD, CacheLoadModifier LOAD_MOD = LOAD_DEFAULT>
CUGAR_FORCEINLINE CUGAR_HOST_DEVICE cugar::cuda::store_reference< T, STORE_MOD, LOAD_MOD >::store_reference ( )
inline

constructor

◆ store_reference() [2/3]

template<typename T , CacheStoreModifier STORE_MOD, CacheLoadModifier LOAD_MOD = LOAD_DEFAULT>
CUGAR_FORCEINLINE CUGAR_HOST_DEVICE cugar::cuda::store_reference< T, STORE_MOD, LOAD_MOD >::store_reference ( T *  base)
inline

constructor

◆ store_reference() [3/3]

template<typename T , CacheStoreModifier STORE_MOD, CacheLoadModifier LOAD_MOD = LOAD_DEFAULT>
CUGAR_FORCEINLINE CUGAR_HOST_DEVICE cugar::cuda::store_reference< T, STORE_MOD, LOAD_MOD >::store_reference ( const store_reference< T, STORE_MOD, LOAD_MOD > &  it)
inline

copy constructor

Member Function Documentation

◆ operator value_type()

template<typename T , CacheStoreModifier STORE_MOD, CacheLoadModifier LOAD_MOD = LOAD_DEFAULT>
CUGAR_FORCEINLINE CUGAR_HOST_DEVICE cugar::cuda::store_reference< T, STORE_MOD, LOAD_MOD >::operator value_type ( )
inline

conversion to value_type

◆ operator+=()

template<typename T , CacheStoreModifier STORE_MOD, CacheLoadModifier LOAD_MOD = LOAD_DEFAULT>
CUGAR_FORCEINLINE CUGAR_HOST_DEVICE store_reference& cugar::cuda::store_reference< T, STORE_MOD, LOAD_MOD >::operator+= ( const value_type  value)
inline

+= operator

◆ operator-=()

template<typename T , CacheStoreModifier STORE_MOD, CacheLoadModifier LOAD_MOD = LOAD_DEFAULT>
CUGAR_FORCEINLINE CUGAR_HOST_DEVICE store_reference& cugar::cuda::store_reference< T, STORE_MOD, LOAD_MOD >::operator-= ( const value_type  value)
inline

-= operator

◆ operator=()

template<typename T , CacheStoreModifier STORE_MOD, CacheLoadModifier LOAD_MOD = LOAD_DEFAULT>
CUGAR_FORCEINLINE CUGAR_HOST_DEVICE store_reference& cugar::cuda::store_reference< T, STORE_MOD, LOAD_MOD >::operator= ( const value_type  value)
inline

assignment


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