Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
RHistUtils.hxx File Reference
#include <tuple>
#include <type_traits>
#include <utility>
Include dependency graph for RHistUtils.hxx:
This graph shows which files directly or indirectly include this file:

Classes

struct  ROOT::Experimental::Internal::LastType< T, Ts >
 
struct  ROOT::Experimental::Internal::LastType< T >
 

Namespaces

namespace  ROOT
 
namespace  ROOT::Experimental
 Namespace for ROOT features in testing.
 
namespace  ROOT::Experimental::Internal
 

Functions

template<typename... Ts, typename A >
std::tuple< const Ts &..., const A & > ROOT::Experimental::Internal::AppendReference (const std::tuple< Ts... > &t, const A &a)
 
template<typename... Ts, std::size_t... I, typename A >
std::tuple< const Ts &..., const A & > ROOT::Experimental::Internal::AppendReferenceImpl (const std::tuple< Ts... > &t, std::index_sequence< I... >, const A &a)
 
template<typename T , typename U >
auto ROOT::Experimental::Internal::AtomicAdd (T *ptr, const U &add) -> decltype(ptr->AtomicAdd(add))
 
template<typename T >
std::enable_if_t< std::is_integral_v< T > > ROOT::Experimental::Internal::AtomicAdd (T *ptr, T val)
 
template<typename T >
std::enable_if_t< std::is_floating_point_v< T > > ROOT::Experimental::Internal::AtomicAdd (T *ptr, T val)
 
template<typename T >
std::enable_if_t< std::is_arithmetic_v< T > > ROOT::Experimental::Internal::AtomicAddCompareExchangeLoop (T *ptr, T val)
 
template<typename T >
std::enable_if_t< std::is_arithmetic_v< T > > ROOT::Experimental::Internal::AtomicAddCompareExchangeReleaseLoop (T *ptr, T val)
 
static void ROOT::Experimental::Internal::AtomicAddRelease (float *ptr, double val)
 
template<typename T , typename U >
auto ROOT::Experimental::Internal::AtomicAddRelease (T *ptr, const U &add) -> decltype(ptr->AtomicAddRelease(add))
 
template<typename T >
std::enable_if_t< std::is_integral_v< T > > ROOT::Experimental::Internal::AtomicAddRelease (T *ptr, T val)
 
template<typename T >
std::enable_if_t< std::is_floating_point_v< T > > ROOT::Experimental::Internal::AtomicAddRelease (T *ptr, T val)
 
template<typename T >
std::enable_if_t< std::is_arithmetic_v< T >, boolROOT::Experimental::Internal::AtomicCompareExchange (T *ptr, T *expected, T *desired)
 
template<typename T >
std::enable_if_t< std::is_arithmetic_v< T >, boolROOT::Experimental::Internal::AtomicCompareExchangeAcquire (T *ptr, T *expected, T *desired)
 
template<typename T >
std::enable_if_t< std::is_arithmetic_v< T >, boolROOT::Experimental::Internal::AtomicCompareExchangeRelease (T *ptr, T *expected, T *desired)
 
template<typename T >
std::enable_if_t< std::is_arithmetic_v< T > > ROOT::Experimental::Internal::AtomicIncRelease (T *ptr)
 
template<typename T >
auto ROOT::Experimental::Internal::AtomicIncRelease (T *ptr) -> decltype(ptr->AtomicIncRelease())
 
template<typename T >
std::enable_if_t< std::is_arithmetic_v< T > > ROOT::Experimental::Internal::AtomicLoad (const T *ptr, T *ret)
 
template<typename T >
auto ROOT::Experimental::Internal::AtomicLoad (const T *ptr, T *ret) -> decltype(ptr->AtomicLoad(ret))
 
template<typename T >
std::enable_if_t< std::is_arithmetic_v< T > > ROOT::Experimental::Internal::AtomicLoadAcquire (const T *ptr, T *ret)
 
template<typename T >
std::enable_if_t< std::is_arithmetic_v< T > > ROOT::Experimental::Internal::AtomicStoreRelease (T *ptr, T *val)
 

Detailed Description

Warning
This file contains implementation details that will change without notice. User code should never include this header directly.

Definition in file RHistUtils.hxx.