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
std::hash_specialization< Head, ndims > Struct Template Reference

#include <Utilities.h>

Public Types

typedef std::tuple< Head, ndims...> argument_type
 
typedef std::size_t result_type
 

Public Member Functions

result_type operator() (const argument_type &t) const
 

Detailed Description

template<typename Head, typename... ndims>
struct std::hash_specialization< Head, ndims >

Definition at line 74 of file Utilities.h.

Member Typedef Documentation

template<typename Head , typename... ndims>
typedef std::tuple<Head, ndims...> std::hash_specialization< Head, ndims >::argument_type

Definition at line 75 of file Utilities.h.

template<typename Head , typename... ndims>
typedef std::size_t std::hash_specialization< Head, ndims >::result_type

Definition at line 76 of file Utilities.h.

Member Function Documentation

template<typename Head , typename... ndims>
result_type std::hash_specialization< Head, ndims >::operator() ( const argument_type t) const
inline

Definition at line 77 of file Utilities.h.

References b, gpuVertexFinder::more, submitPVValidationJobs::t, and std::tuple_tail().

77  {
78  const uint32_t& b = reinterpret_cast<const uint32_t&>(std::get<0>(t));
79  //const uint32_t& more = (*this)(tuple_tail(t));
80  const uint32_t& more = hash_specialization<ndims...>()(tuple_tail(t));
81  return b ^ more;
82  }
std::tuple< Tail...> tuple_tail(const std::tuple< Head, Tail...> &tpl)
Definition: Utilities.h:66
double b
Definition: hdecay.h:118