OpenJPEG version 1.1
[openjpeg.git] / libopenjpeg / fix.c
index 55dc01bdb8d66c0e7a51e155a01f128e5d300e65..21d440088384981de44afacef4f4d8b862b8df81 100644 (file)
@@ -1,5 +1,9 @@
 /*
- * Copyright (c) 2001-2002, David Janssens
+ * Copyright (c) 2001-2003, David Janssens
+ * Copyright (c) 2002-2003, Yannick Verschueren
+ * Copyright (c) 2003-2005, Francois Devaux and Antonin Descampe
+ * Copyright (c) 2005, Herv� Drolon, FreeImage Team
+ * Copyright (c) 2002-2005, Communications and remote sensing Laboratory, Universite catholique de Louvain, Belgium
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
 
 #include "fix.h"
 
-#ifdef DAVID_WIN32
+#ifdef WIN32
 #define int64 __int64
 #else
 #define int64 long long
 #endif
 
-/*
- * Multiply two fixed-precision rational numbers.
- */
-int fix_mul(int a, int b)
-{
-       return (int) ((int64) a * (int64) b >> 13);
+int fix_mul(int a, int b) {
+    int64 temp = (int64) a * (int64) b >> 12;
+    return (int) ((temp >> 1) + (temp & 1)) ;
 }
+
+
+