10 #ifndef __RAJA_PRIVATIZER_HPP
11 #define __RAJA_PRIVATIZER_HPP
13 #include "RAJA/config.hpp"
14 #include "camp/camp.hpp"
15 #include "camp/concepts.hpp"
34 static auto Test(
void*)
35 -> decltype(camp::val<typename C::privatizer>(), camp::true_type {});
38 static camp::false_type Test(...);
56 "Privatizer selected inappropriately, this is almost certainly "
58 static_assert(!std::is_base_of<GenericWrapperBase, T>::value,
59 "Privatizer selected inappropriately, this is almost certainly "
87 typename std::enable_if<!has_privatizer<T>::value>::type* =
nullptr>
95 typename std::enable_if<has_privatizer<T>::value>::type* =
nullptr>
Definition: privatizer.hpp:31
static bool const value
Definition: privatizer.hpp:41
#define RAJA_HOST_DEVICE
Definition: macros.hpp:65
#define RAJA_SUPPRESS_HD_WARN
Definition: macros.hpp:68
RAJA_HOST_DEVICE auto thread_privatize(const T &item) -> Privatizer< T >
Create a private copy of the argument to be stored on the current thread's stack in a class of the Pr...
Definition: privatizer.hpp:88
Definition: AlignedRangeIndexSetBuilders.cpp:35
auto privatizer
Definition: launch.hpp:176
Definition: privatizer.hpp:47
Definition: privatizer.hpp:51
RAJA_SUPPRESS_HD_WARN RAJA_HOST_DEVICE Privatizer(const T &o)
Definition: privatizer.hpp:63
value_type priv
Definition: privatizer.hpp:54
RAJA_SUPPRESS_HD_WARN RAJA_HOST_DEVICE reference_type get_priv()
Definition: privatizer.hpp:66
value_type & reference_type
Definition: privatizer.hpp:53
camp::decay< T > value_type
Definition: privatizer.hpp:52