From 0f8e4cea3f73be69b689bb01fea57d65a1d6f466 Mon Sep 17 00:00:00 2001 From: Mike Ford Date: Wed, 24 Jun 2020 10:39:53 +0100 Subject: [PATCH] added some more lengths to fps system --- src/include/units/physical/fps/length.h | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/src/include/units/physical/fps/length.h b/src/include/units/physical/fps/length.h index 24cd8466..4872c7ea 100644 --- a/src/include/units/physical/fps/length.h +++ b/src/include/units/physical/fps/length.h @@ -33,13 +33,20 @@ struct foot : named_scaled_unit, struct inch : named_scaled_unit, foot> {}; -struct yard : named_scaled_unit, foot> {}; +// thousandth of an inch +struct thousandth : named_scaled_unit, inch> {}; +struct thou : alias_unit{}; +struct mil : alias_unit{}; + +struct yard : named_scaled_unit, foot> {}; struct fathom : named_scaled_unit, foot> {}; +struct kiloyard : prefixed_unit {}; + struct mile : named_scaled_unit, foot> {}; -struct nautical_mile : named_scaled_unit, yard> {}; +struct nautical_mile : named_scaled_unit, yard> {}; @@ -50,6 +57,11 @@ using length = quantity; inline namespace literals { +// Thousandth +constexpr auto operator"" q_thou(unsigned long long l) { return length(l); } +constexpr auto operator"" q_thou(long double l) { return length(l); } + + // Inch constexpr auto operator"" q_in(unsigned long long l) { return length(l); } constexpr auto operator"" q_in(long double l) { return length(l); } @@ -66,6 +78,10 @@ constexpr auto operator"" q_yd(long double l) { return length constexpr auto operator"" q_ftm(unsigned long long l) { return length(l); } constexpr auto operator"" q_ftm(long double l) { return length(l); } +// Kiloyard +constexpr auto operator"" q_kyd(unsigned long long l) { return length(l); } +constexpr auto operator"" q_kyd(long double l) { return length(l); } + // Mile constexpr auto operator"" q_mile(unsigned long long l) { return length(l); } constexpr auto operator"" q_mile(long double l) { return length(l); }