⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ttcalc.h

📁 神龙卡开发原代码
💻 H
字号:
/******************************************************************* * *  ttcalc.h * *    Arithmetic Computations (specification). * *  Copyright 1996-1999 by *  David Turner, Robert Wilhelm, and Werner Lemberg. * *  This file is part of the FreeType project, and may only be used *  modified and distributed under the terms of the FreeType project *  license, LICENSE.TXT.  By continuing to use, modify, or distribute *  this file you indicate that you have read the license and *  understand and accept it fully. * ******************************************************************/#ifndef TTCALC_H#define TTCALC_H#include "ttconfig.h"#include "freetype.h"#ifdef __cplusplus  extern "C" {#endif#ifdef LONG64  typedef INT64  TT_Int64;#define ADD_64( x, y, z )  z = x + y#define SUB_64( x, y, z )  z = x - y#define MUL_64( x, y, z )  z = (TT_Int64)(x) * (y)#define DIV_64( x, y )     ( (x) / (y) )#define SQRT_64( x )       Sqrt64( x )#define SQRT_32( x )       Sqrt32( x )  LOCAL_DEF TT_Int32  Sqrt64( TT_Int64  l );#else /* LONG64 */  struct  TT_Int64_  {    TT_Word32  lo;    TT_Word32  hi;  };  typedef struct TT_Int64_  TT_Int64;#define ADD_64( x, y, z )  Add64( &x, &y, &z )#define SUB_64( x, y, z )  Sub64( &x, &y, &z )#define MUL_64( x, y, z )  MulTo64( x, y, &z )#define DIV_64( x, y )     Div64by32( &x, y )#define SQRT_64( x )       Sqrt64( &x )#define SQRT_32( x )       Sqrt32( x )  LOCAL_DEF void  Add64( TT_Int64*  x, TT_Int64*  y, TT_Int64*  z );  LOCAL_DEF void  Sub64( TT_Int64*  x, TT_Int64*  y, TT_Int64*  z );  LOCAL_DEF void  MulTo64( TT_Int32  x, TT_Int32  y, TT_Int64*  z );  LOCAL_DEF TT_Int32  Div64by32( TT_Int64*  x, TT_Int32  y );  LOCAL_DEF int  Order64( TT_Int64*  z );  LOCAL_DEF TT_Int32  Sqrt64( TT_Int64*  l );#endif /* LONG64 */  /* The two following functions are now part of the API!          */  /* TT_Long  TT_MulDiv( TT_Long  a, TT_Long  b, TT_Long  c );     */  /* TT_Long  TT_MulFix( TT_Long  a, TT_Long  b );                 */#define INT_TO_F26DOT6( x )    ( (Long)(x) << 6  )#define INT_TO_F2DOT14( x )    ( (Long)(x) << 14 )#define INT_TO_FIXED( x )      ( (Long)(x) << 16 )#define F2DOT14_TO_FIXED( x )  ( (Long)(x) << 2  )#define FLOAT_TO_FIXED( x )    ( (Long)(x * 65536.0) )#define ROUND_F26DOT6( x )     ( x >= 0 ? (   ((x) + 32) & -64) \                                        : ( -((32 - (x)) & -64) ) )#ifdef __cplusplus  }#endif#endif /* TTCALC_H *//* END */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -