48 template <
typename T_DATA >
51 template <
typename T_DATA >
54 template <
typename T_DATA >
57 template <
typename T_DATA >
61 template <
typename T_DATA >
67 template <
typename T_DATA >
69 data = std::move(from.data);
73 template <
typename T_DATA >
78 template <
typename T_DATA >
83 template <
typename T_DATA >
88 template <
typename T_DATA >
93 template <
typename T_DATA >
gum is the global namespace for all aGrUM entities
bool operator!=(const ThreadData< T_DATA > &from) const
inequality operator
ThreadData(const T_DATA &theData)
default constructor
std::conditional< std::is_scalar< T_DATA >::value, T_DATA, T_DATA & > data_type
the return types of accessors: T_DATA if scalar, else T_DATA&
ThreadData< T_DATA > & operator=(const ThreadData< T_DATA > &from)
copy operator
bool operator==(const ThreadData< T_DATA > &from) const
equality operator
T_DATA data
the data we wish to store without cacheline parallel problem
data_type operator*()
easy accessor
A wrapper that enables to store data in a way that prevents false cacheline sharing.