regtypes.h 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. /***************************************************************************\
  2. *
  3. * (C) copyright Fraunhofer - IIS (1998)
  4. * All Rights Reserved
  5. *
  6. * filename: regtypes.h
  7. * project : -
  8. * author : Stefan Gewinner [email protected]
  9. * date : 1998-06-08
  10. * contents/description: absolute minimum to make l3reg.h compile without windef.h
  11. *
  12. * $Header: /cvs/root/nullsoft/Replicant/jni/nsmp3/regtypes.h,v 1.1 2010/11/17 20:46:05 audiodsp Exp $
  13. *
  14. \***************************************************************************/
  15. /* the typedefs should be in place if we already got windows.h included */
  16. #ifndef _INC_WINDOWS
  17. #ifndef __REGTYPES_H__
  18. #define __REGTYPES_H__
  19. /*-------------------------------------------------------------------------*/
  20. #ifdef _MSC_VER
  21. #pragma warning(disable:4103)
  22. #pragma pack(push, 1) /* assume byte packing throughout */
  23. #endif
  24. /*-------------------------------------------------------------------------*/
  25. #define FAR
  26. #define NEAR
  27. typedef unsigned long DWORD ;
  28. typedef unsigned short WORD ;
  29. /*
  30. * extended waveform format structure used for all non-PCM formats. this
  31. * structure is common to all non-PCM formats.
  32. */
  33. typedef struct tagWAVEFORMATEX
  34. {
  35. WORD wFormatTag; /* format type */
  36. WORD nChannels; /* number of channels (i.e. mono, stereo...) */
  37. DWORD nSamplesPerSec; /* sample rate */
  38. DWORD nAvgBytesPerSec; /* for buffer estimation */
  39. WORD nBlockAlign; /* block size of data */
  40. WORD wBitsPerSample; /* number of bits per sample of mono data */
  41. WORD cbSize; /* the count in bytes of the size of */
  42. /* extra information (after cbSize) */
  43. } WAVEFORMATEX, *PWAVEFORMATEX, NEAR *NPWAVEFORMATEX, FAR *LPWAVEFORMATEX ;
  44. typedef const WAVEFORMATEX FAR *LPCWAVEFORMATEX ;
  45. /*-------------------------------------------------------------------------*/
  46. #ifdef _MSC_VER
  47. #pragma pack(pop) /* revert to previous packing */
  48. #endif
  49. /*-------------------------------------------------------------------------*/
  50. #endif
  51. #endif