/vol/vipdata/irtk/contrib++/include/irtkArith.h

00001 /*=========================================================================
00002 
00003   Library   : Image Registration Toolkit (IRTK)
00004   Module    : $Id: irtkArith.h 2 2008-12-23 12:40:14Z dr $
00005   Copyright : Imperial College, Department of Computing
00006               Visual Information Processing (VIP), 2008 onwards
00007   Date      : $Date: 2008-12-23 12:40:14 +0000 (Tue, 23 Dec 2008) $
00008   Version   : $Revision: 2 $
00009   Changes   : $Author: dr $
00010 
00011 =========================================================================*/
00012 
00013 #ifndef IRTKARITH_H
00014 
00015 #define IRTKARITH_H
00016 
00017 #include <irtkImage.h>
00018 
00019 class irtkArith
00020 {
00021 public:
00022   static int IAbs (int iValue);
00023   static int ICeil (float fValue);
00024   static int IFloor (float fValue);
00025   static int ISign (int iValue);
00026 
00027   static double Abs (double fValue);
00028   static double ACos (double fValue);
00029   static double ASin (double fValue);
00030   static double ATan (double fValue);
00031   static double ATan2 (double fY, double fX);
00032   static double Ceil (double fValue);
00033   static double Cos (double fValue);
00034   static double Exp (double fValue);
00035   static double Floor (double fValue);
00036   static double Log (double fValue);
00037   static double Pow (double kBase, double kExponent);
00038   static double Sign (double fValue);
00039   static double Sin (double fValue);
00040   static double Sqr (double fValue);
00041   static double Sqrt (double fValue);
00042   static double UnitRandom ();  // in [0,1]
00043   static double SymmetricRandom ();  // in [-1,1]
00044 
00045 };
00046 
00047 #endif