LArSoft  v07_13_02
Liquid Argon Software toolkit - http://larsoft.org/
geo::vect::details::HasGetter< Vector > Struct Template Reference

#include "geo_vectors_utils.h"

Static Public Attributes

static constexpr bool X = TestX<Vector>(nullptr)
 
static constexpr bool Y = TestY<Vector>(nullptr)
 
static constexpr bool Z = TestZ<Vector>(nullptr)
 
static constexpr bool T = TestT<Vector>(nullptr)
 

Static Private Member Functions

template<typename Class >
static constexpr bool TestX (decltype(std::declval< Class >().X())*)
 
template<typename Class >
static constexpr bool TestX (...)
 
template<typename Class >
static constexpr bool TestY (decltype(std::declval< Class >().Y())*)
 
template<typename Class >
static constexpr bool TestY (...)
 
template<typename Class >
static constexpr bool TestZ (decltype(std::declval< Class >().Z())*)
 
template<typename Class >
static constexpr bool TestZ (...)
 
template<typename Class >
static constexpr bool TestT (decltype(std::declval< Class >().T())*)
 
template<typename Class >
static constexpr bool TestT (...)
 

Detailed Description

template<typename Vector>
struct geo::vect::details::HasGetter< Vector >

Definition at line 103 of file geo_vectors_utils.h.

Member Function Documentation

template<typename Vector >
template<typename Class >
static constexpr bool geo::vect::details::HasGetter< Vector >::TestT ( decltype(std::declval< Class >().T())*  )
inlinestaticprivate

Definition at line 119 of file geo_vectors_utils.h.

119 { return true; }
template<typename Vector >
template<typename Class >
static constexpr bool geo::vect::details::HasGetter< Vector >::TestT (   ...)
inlinestaticprivate

Definition at line 121 of file geo_vectors_utils.h.

121 { return false; }
template<typename Vector >
template<typename Class >
static constexpr bool geo::vect::details::HasGetter< Vector >::TestX ( decltype(std::declval< Class >().X())*  )
inlinestaticprivate

Definition at line 107 of file geo_vectors_utils.h.

107 { return true; }
template<typename Vector >
template<typename Class >
static constexpr bool geo::vect::details::HasGetter< Vector >::TestX (   ...)
inlinestaticprivate

Definition at line 109 of file geo_vectors_utils.h.

109 { return false; }
template<typename Vector >
template<typename Class >
static constexpr bool geo::vect::details::HasGetter< Vector >::TestY ( decltype(std::declval< Class >().Y())*  )
inlinestaticprivate

Definition at line 111 of file geo_vectors_utils.h.

111 { return true; }
template<typename Vector >
template<typename Class >
static constexpr bool geo::vect::details::HasGetter< Vector >::TestY (   ...)
inlinestaticprivate

Definition at line 113 of file geo_vectors_utils.h.

113 { return false; }
template<typename Vector >
template<typename Class >
static constexpr bool geo::vect::details::HasGetter< Vector >::TestZ ( decltype(std::declval< Class >().Z())*  )
inlinestaticprivate

Definition at line 115 of file geo_vectors_utils.h.

115 { return true; }
template<typename Vector >
template<typename Class >
static constexpr bool geo::vect::details::HasGetter< Vector >::TestZ (   ...)
inlinestaticprivate

Definition at line 117 of file geo_vectors_utils.h.

117 { return false; }

Member Data Documentation

template<typename Vector >
constexpr bool geo::vect::details::HasGetter< Vector >::T = TestT<Vector>(nullptr)
static

Definition at line 127 of file geo_vectors_utils.h.

template<typename Vector >
constexpr bool geo::vect::details::HasGetter< Vector >::X = TestX<Vector>(nullptr)
static

Definition at line 124 of file geo_vectors_utils.h.

template<typename Vector >
constexpr bool geo::vect::details::HasGetter< Vector >::Y = TestY<Vector>(nullptr)
static

Definition at line 125 of file geo_vectors_utils.h.

template<typename Vector >
constexpr bool geo::vect::details::HasGetter< Vector >::Z = TestZ<Vector>(nullptr)
static

Definition at line 126 of file geo_vectors_utils.h.


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