24 #ifndef COM_DAFER45_TBTK_QUANTITY_CONSTANT
25 #define COM_DAFER45_TBTK_QUANTITY_CONSTANT
42 template<
typename Quantity>
43 explicit Constant(
double value, Quantity);
45 template<
typename Quantity>
46 int getExponent()
const;
53 std::vector<int> exponents;
56 template<
typename Quantity>
64 exponents[0] =
static_cast<int>(Quantity::Exponent::Angle);
65 exponents[1] =
static_cast<int>(Quantity::Exponent::Charge);
66 exponents[2] =
static_cast<int>(Quantity::Exponent::Count);
67 exponents[3] =
static_cast<int>(Quantity::Exponent::Energy);
68 exponents[4] =
static_cast<int>(Quantity::Exponent::Length);
69 exponents[5] =
static_cast<int>(Quantity::Exponent::Temperature);
70 exponents[6] =
static_cast<int>(Quantity::Exponent::Time);
74 inline int Constant::getExponent<Angle>()
const{
79 inline int Constant::getExponent<Charge>()
const{
84 inline int Constant::getExponent<Count>()
const{
89 inline int Constant::getExponent<Energy>()
const{
94 inline int Constant::getExponent<Length>()
const{
99 inline int Constant::getExponent<Temperature>()
const{
104 inline int Constant::getExponent<Time>()
const{