summaryrefslogtreecommitdiffstats
path: root/dive.h
diff options
context:
space:
mode:
authorGravatar Linus Torvalds <torvalds@linux-foundation.org>2012-06-19 20:06:59 -0700
committerGravatar Linus Torvalds <torvalds@linux-foundation.org>2012-06-19 20:06:59 -0700
commit80b0c097334a13f9fd69ed87eceb3997a1084311 (patch)
treefd3aa7fe36f1e5b63f35582a9da7c33cbac041de /dive.h
parente5692a77c3f99fe485f6490f567f6cc9cea2adff (diff)
downloadsubsurface-80b0c097334a13f9fd69ed87eceb3997a1084311.tar.gz
Add a few more conversion helper functions to dive.h
Convert feet to mm, psi to mbar, and F to mkelvin. We do this elsewhere too, but I'm going to need it for the Cochran CSV files, so let's do the helpers now. Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'dive.h')
-rw-r--r--dive.h20
1 files changed, 18 insertions, 2 deletions
diff --git a/dive.h b/dive.h
index 4d60a77a2..6b5c77816 100644
--- a/dive.h
+++ b/dive.h
@@ -125,21 +125,31 @@ static inline double mm_to_feet(int mm)
return mm * 0.00328084;
}
+static inline unsigned long feet_to_mm(double feet)
+{
+ return feet * 304.8 + 0.5;
+}
+
static inline int to_feet(depth_t depth)
{
return mm_to_feet(depth.mm) + 0.5;
}
-static double mkelvin_to_C(int mkelvin)
+static inline double mkelvin_to_C(int mkelvin)
{
return (mkelvin - 273150) / 1000.0;
}
-static double mkelvin_to_F(int mkelvin)
+static inline double mkelvin_to_F(int mkelvin)
{
return mkelvin * 9 / 5000.0 - 459.670;
}
+static inline unsigned long F_to_mkelvin(double f)
+{
+ return (f-32) * 1000 / 1.8 + 273150.5;
+}
+
static inline int to_C(temperature_t temp)
{
if (!temp.mkelvin)
@@ -165,6 +175,12 @@ static inline double psi_to_bar(double psi)
{
return psi / 14.5037738;
}
+
+static inline unsigned long psi_to_mbar(double psi)
+{
+ return psi_to_bar(psi)*1000 + 0.5;
+}
+
static inline int to_PSI(pressure_t pressure)
{
return pressure.mbar * 0.0145037738 + 0.5;