49 #ifndef SACADO_SCALARFLOPCOUNTERTRAITS_HPP
50 #define SACADO_SCALARFLOPCOUNTERTRAITS_HPP
56 namespace FlopCounterPack {
57 template <
typename T>
class ScalarFlopCounter;
67 template <typename ScalarT>
68 struct
ScalarType< FlopCounterPack::ScalarFlopCounter<ScalarT> > {
73 template <
typename ScalarT>
74 struct ValueType< FlopCounterPack::ScalarFlopCounter<ScalarT> > {
79 template <
typename ScalarT>
80 struct IsADType< FlopCounterPack::ScalarFlopCounter<ScalarT> > {
85 template <
typename ScalarT>
86 struct IsScalarType< FlopCounterPack::ScalarFlopCounter<ScalarT> > {
87 static const bool value =
false;
91 template <
typename ScalarT>
92 struct Value< FlopCounterPack::ScalarFlopCounter<ScalarT> > {
99 template <
typename ScalarT>
100 struct ScalarValue< FlopCounterPack::ScalarFlopCounter<ScalarT> > {
108 template <
typename ScalarT>
109 struct StringName< FlopCounterPack::ScalarFlopCounter<ScalarT> > {
111 return std::string(
"Sacado::FlopCounterPack::ScalarFlopCounter< ") +
118 template <
typename ScalarT>
125 #endif // SACADO_SCALARFLOPCOUNTERTRAITS_HPP
static std::string eval()
static std::string eval()
ScalarType< ScalarT >::type type
Base template specification for ScalarValue.
Base template specification for ScalarType.
Base template specification for string names of types.
ValueType< FlopCounterPack::ScalarFlopCounter< ScalarT > >::type value_type
Base template specification for IsADType.
const T & val() const
Return the current value.
Base template specification for Value.
#define SACADO_AD_PROMOTE_SPEC(NS, AD)
ValueType< FlopCounterPack::ScalarFlopCounter< ScalarT > >::type value_type
static const value_type & eval(const FlopCounterPack::ScalarFlopCounter< ScalarT > &x)
Templated flop counter class.
static const scalar_type & eval(const FlopCounterPack::ScalarFlopCounter< ScalarT > &x)
Base template specification for IsScalarType.
ScalarType< FlopCounterPack::ScalarFlopCounter< ScalarT > >::type scalar_type
Base template specification for ValueType.
static KOKKOS_INLINE_FUNCTION const T & eval(const T &x)
Base template specification for testing whether type is statically sized.