From d8b658e75bc6165e059a13cb2fef5474fa9ff4f5 Mon Sep 17 00:00:00 2001 From: Sam Anthony Date: Fri, 28 Feb 2025 13:04:43 -0500 Subject: unit of measurement api --- unit.h | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 unit.h (limited to 'unit.h') diff --git a/unit.h b/unit.h new file mode 100644 index 0000000..562ec8e --- /dev/null +++ b/unit.h @@ -0,0 +1,40 @@ +typedef double AngularSpeed; + +AngularSpeed rad_per_sec(double x); +AngularSpeed deg_per_sec(double x); +AngularSpeed rpm(double x); +double as_rad_per_sec(AngularSpeed x); +double as_deg_per_sec(AngularSpeed x); +double as_rpm(AngularSpeed x); + + +typedef double Fraction; + +Fraction percent(double x); +double as_percent(double x); + + +typedef double Pressure; + +Pressure pascal(double x); +Pressure millibar(double x); +Pressure kilopascal(double x); +Pressure bar(double x); +Pressure psi(double x); +double as_pascal(Pressure x); +double as_millibar(Pressure x); +double as_kilopascal(Pressure x); +double as_bar(Pressure x); +double as_psi(Pressure x); + + +typedef double Volume; + +Volume cubic_centimetre(double x); +Volume litre(double x); +Volume cubic_metre(double x); +Volume cubic_inch(double x); +double as_cubic_centimetre(Volume x); +double as_litre(Volume x); +double as_cubic_metre(double x); +double as_cubic_inch(double x); -- cgit v1.2.3