summaryrefslogtreecommitdiff
path: root/libs/pbd/msvc
diff options
context:
space:
mode:
authorJohn Emmas <johne53@tiscali.co.uk>2014-11-24 12:56:07 +0000
committerJohn Emmas <johne53@tiscali.co.uk>2014-11-24 12:56:07 +0000
commitc7ddedc5b86ead3d74ffe2061ff850bf02c46edc (patch)
treec303ffdb90845b0d21c47a6cb5d21c39ebf2be9a /libs/pbd/msvc
parent018f559aaddafd231a89b1a013a0ef1f5f768f63 (diff)
Simulate 'trunc()' which isn't available in MSVC
(needed by 'gtk2_ardour/editor.cc')
Diffstat (limited to 'libs/pbd/msvc')
-rw-r--r--libs/pbd/msvc/msvc_pbd.cc21
1 files changed, 21 insertions, 0 deletions
diff --git a/libs/pbd/msvc/msvc_pbd.cc b/libs/pbd/msvc/msvc_pbd.cc
index 5b9c9d449a..ddef968569 100644
--- a/libs/pbd/msvc/msvc_pbd.cc
+++ b/libs/pbd/msvc/msvc_pbd.cc
@@ -241,6 +241,27 @@ round(double x)
return (floor(x));
}
+//***************************************************************
+//
+// trunc()
+//
+// Emulates trunc() using floor() and ceil().
+//
+// Returns:
+//
+// On Success: The largest integer whose magnitude is less
+// than or equal to 'x' (regardless of sign).
+// On Failure: None
+//
+LIBPBD_API double PBD_APICALLTYPE
+trunc(double x)
+{
+ if (x < 0)
+ return (ceil(x));
+
+ return (floor(x));
+}
+
namespace PBD {
//***************************************************************