X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=src%2Fgdcmopenjpeg%2Flibopenjpeg%2Ffix.c;h=e9ba82be8a39d3a886ebedafdffa388f6ccc5b8d;hb=48215bafde3d6955d9cd60e074f6d6832ea9752f;hp=81cc5f1fede3b2a6c7fbeb0e44d6fbea3ad46d08;hpb=1f1fdedc6596e5b1da08c53918cd91796e1e1743;p=gdcm.git diff --git a/src/gdcmopenjpeg/libopenjpeg/fix.c b/src/gdcmopenjpeg/libopenjpeg/fix.c index 81cc5f1f..e9ba82be 100644 --- a/src/gdcmopenjpeg/libopenjpeg/fix.c +++ b/src/gdcmopenjpeg/libopenjpeg/fix.c @@ -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 @@ -25,39 +29,17 @@ */ #include "fix.h" -#include /*Add Antonin : multbug1*/ -#ifdef WIN32 +#if defined(_MSC_VER) || defined(__BORLANDC__) #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); -}*/ - - -/*Mod Antonin : multbug1*/ -/* -int fix_mul(int a, int b) -{ - double tmp= (double) ((int64) a * (int64) b); - int64 v = (int64) ((fabs(tmp/8192.0)>=floor(fabs(tmp/8192.0))+0.5)?fabs(tmp/8192.0)+1.0:fabs(tmp/8192.0)); - v = (tmp<0)?-v:v; - return (int) v; -} -*/ -/*doM*/ - -int fix_mul(int a, int b) /* Luke Lee optimized : 11/16/2004*/ -{ +int fix_mul(int a, int b) { int64 temp = (int64) a * (int64) b >> 12; return (int) ((temp >> 1) + (temp & 1)) ; } + +