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

📄 wmatypes.h

📁 本程序为ST公司开发的源代码
💻 H
字号:
//*@@@+++@@@@******************************************************************//// Microsoft Windows Media// Copyright (C) Microsoft Corporation. All rights reserved.////*@@@---@@@@******************************************************************/*************************************************************************Copyright (C) Microsoft Corporation, 1996 - 1999Module Name:    wmatypes.hAbstract:    Processor-specific data types.Author:    Kazuhito Koishida (kazukoi)       Jan 31, 2003Revision History:*************************************************************************/#ifndef __WMATYPES_H#define __WMATYPES_H//#if 0 //O.K. moved to macros.h// ***************************************************//           Platform-Specific typedefs// ***************************************************#ifndef DISABLE_OPT	// If this is defined, use the ANSI build#ifdef __QNX__#undef _M_IX86#endif#if defined(_M_IX86) && !defined(INTEGER_ENCODER)//#ifdef __QNX__//#define WMA_TARGET_QNX_X86//#else#define WMA_TARGET_X86//#endif#endif#ifdef _M_AMD64  #ifndef WMA_TARGET_WIN64    #define WMA_TARGET_WIN64  #endif  #ifndef DISABLE_INTELFFT    #define DISABLE_INTELFFT  #endif #endif#ifdef _M_IA64  #ifndef WMA_TARGET_WIN64    #define WMA_TARGET_WIN64  #endif  #ifndef DISABLE_INTELFFT    #define DISABLE_INTELFFT  #endif #endif#ifdef _MIPS_#define WMA_TARGET_MIPS#endif#if defined(_SH3_) && !defined(_SH4_)#define WMA_TARGET_SH3#endif#ifdef _SH4_#define WMA_TARGET_SH4#endif#ifdef _Embedded_x86#define WMA_TARGET_Embedded_x86#endif#ifdef S_SUNOS5#define WMA_TARGET_S_SUNOS5#endif#ifdef _ARM_#define WMA_TARGET_ARM#endif// It's often nice to be able to compare the output between optimized versions// and the ANSI version, to verify that the optimizations are in sync. Alas,// some optimizations sacrifice reproducibility for speed. The following #define allows// us to disable those optimizations to verify the main algorithms.//#define WMA_ANSI_COMPATIBILITY_MODE#endif	// !DISABLE_OPT#if defined(WMA_TARGET_WIN64)#include "wmatypes_win64.h"#elif defined(WMA_TARGET_X86)#include "wmatypes_x86.h"#elif defined(WMA_TARGET_QNX_X86)#include "wmatypes_qnx_x86.h"#elif defined(WMA_TARGET_MIPS)#include "wmatypes_mips.h"#elif defined(WMA_TARGET_SH3)#include "wmatypes_sh3.h"#elif defined(WMA_TARGET_SH4)#include "wmatypes_sh4.h"#elif defined(WMA_TARGET_ARM)//#include "wmatypes_arm.h" //O.K.#elif defined(WMA_TARGET_Embedded_x86)#include "wmatypes_embedded_x86.h"#elif defined(WMA_TARGET_S_SUNOS5)#include "wmatypes_s_sunos5.h"#elif defined(WMA_TARGET_MACOS)#include "wmatypes_macos.h"#else#define WMA_TARGET_ANSI#include "wmatypes_ansi.h"#endif // platform specific #ifdefs// **************************************************************************// Overridable Compiler Directives// **************************************************************************#ifndef PLATFORM_SPECIFIC_INLINE// This should hopefully work for most compilers. It works for VC#ifdef WMA_TARGET_ARM#ifndef INLINE	#ifdef __GNUCOMP_VERSION		#define INLINE inline __attribute__((always_inline)) //O.K. removed from macros.h	#else			//#define INLINE __forceinline  // RVDS armcc		#define INLINE __inline			// ADS armcc	#endif	#endif#else#define INLINE __inline#endif#endif  // PLATFORM_SPECIFIC_INLINE// ***************************************************//            default fundamental typedefs// ***************************************************#ifndef PLATFORM_SPECIFIC_U64typedef unsigned long long U64;  //O.K.#endif#ifndef PLATFORM_SPECIFIC_I64typedef long long I64;#endif#ifndef PLATFORM_SPECIFIC_U32typedef unsigned long int U32;#define U32_MAX ((U32)0xffffffffu)#endif#ifndef PLATFORM_SPECIFIC_I32typedef long int I32;#define I32_MIN ((I32)0x80000000)#define I32_MAX ((I32)0x7fffffff)#endif#ifndef PLATFORM_SPECIFIC_U16typedef unsigned short U16;#define U16_MAX ((I32)0x0000ffff)#endif#ifndef PLATFORM_SPECIFIC_I16typedef short I16;#define I16_MIN ((I32)0xffff8000)#define I16_MAX ((I32)0x00007fff)#endif#ifndef PLATFORM_SPECIFIC_U8typedef unsigned char U8;#define U8_MAX ((I32)0x000000ff)#endif#ifndef PLATFORM_SPECIFIC_I8typedef signed char I8;#define I8_MIN ((I32)0xffffff80)#define I8_MAX ((I32)0x0000007f)#endif#ifndef PLATFORM_SPECIFIC_F32typedef float F32;#endif#ifndef PLATFORM_SPECIFIC_F64typedef double F64;#endif// the following "UP" types are for using n-bit or native type, in case// using native types might be faster.#ifndef PLATFORM_SPECIFIC_I8UPtypedef int I8UP;#endif#ifndef PLATFORM_SPECIFIC_U8UPtypedef unsigned U8UP;#endif#ifndef PLATFORM_SPECIFIC_I16UPtypedef int I16UP;#endif#ifndef PLATFORM_SPECIFIC_U16UPtypedef unsigned U16UP;#endif#ifndef PLATFORM_SPECIFIC_I32UPtypedef int I32UP;#endif#ifndef PLATFORM_SPECIFIC_U32UPtypedef unsigned U32UP;#endif#ifndef PLATFORM_SPECIFIC_I64UPtypedef long long I64UP;#endif#ifndef PLATFORM_SPECIFIC_U64UPtypedef unsigned long long U64UP;#endif#ifndef PLATFORM_SPECIFIC_F32UPtypedef float F32UP;#endif#ifndef PLATFORM_SPECIFIC_F64UPtypedef double F64UP;#endif#ifndef	PLATFORM_SPECIFIC_CBDATAtypedef void* CBDATA; // callback data parameter#endif // PLATFORM_SPECIFIC_CBDATAtypedef double  Double;typedef float   Float;typedef void    Void;typedef U32     UIntW;	//[LL] UInt -> UintWtypedef I32     IntW;	//[LL] Int -> IntWtypedef I32     Bool; // In Win32, BOOL is an "int" == 4 bytes. Keep it this way to reduce problems.typedef char    Char;#ifndef True#define True 1#endif#ifndef False#define False 0#endif#ifndef TRUE#define TRUE 1#endif#ifndef FALSE#define FALSE 0#endif#define WMAB_TRUE 1#define WMAB_FALSE 0//added O.K. ------------------------------------------------------------------#ifndef _BOOL_DEFINED#define _BOOL_DEFINEDtypedef Bool BOOL;#endif /* _BOOL_DEFINED */#ifndef _BYTE_DEFINED#define _BYTE_DEFINEDtypedef unsigned char   BYTE;#endif /* _BYTE_DEFINED */#ifndef _WORD_DEFINED#define _WORD_DEFINEDtypedef unsigned short  WORD;#endif /* _WORD_DEFINED */#ifndef _DWORD_DEFINED#define _DWORD_DEFINEDtypedef unsigned long    DWORD; /* actually long, but this should be okay */#endif /* _DWORD_DEFINED */// define basic types/*typedef I64		        WMA_I64; //O.K.typedef unsigned long   WMA_U32;typedef long            WMA_I32;typedef unsigned short  WMA_U16;typedef short           WMA_I16;typedef unsigned char   WMA_U8;typedef WMA_I32         WMA_Bool;typedef int WMARESULT;*///#endif // 0#endif  // __WMATYPES_H

⌨️ 快捷键说明

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