Subversion Repositories pentevo

Rev

Rev 796 | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed | ?url?

  1. #ifndef SND_BASS_H
  2. #define SND_BASS_H
  3.  
  4. namespace BASS
  5. {
  6. typedef DWORD (WINAPI *TGetVersion)();
  7. typedef BOOL  (WINAPI *TGetInfo)(BASS_INFO*);
  8. typedef int   (WINAPI *TErrorGetCode)();
  9. typedef BOOL  (WINAPI *TInit)(int,DWORD,DWORD,HWND,GUID*);
  10. typedef BOOL  (WINAPI *TFree)();
  11. typedef BOOL  (WINAPI *TPause)();
  12. typedef BOOL  (WINAPI *TStart)();
  13. typedef BOOL  (WINAPI *TStop)();
  14. typedef BOOL  (WINAPI *TSetConfig)(DWORD,DWORD);
  15. typedef DWORD (WINAPI *TGetConfig)(DWORD);
  16.  
  17. typedef BOOL  (WINAPI *TMusicFree)(HMUSIC);
  18. typedef HMUSIC(WINAPI *TMusicLoad)(BOOL,void*,QWORD,DWORD,DWORD,DWORD);
  19. typedef BOOL  (WINAPI *TChannelPause)(DWORD);
  20. typedef BOOL  (WINAPI *TChannelPlay)(DWORD,BOOL);
  21. typedef BOOL (WINAPI *TChannelStop)(DWORD);
  22.  
  23. typedef QWORD (WINAPI *TChannelGetPosition)(DWORD handle, DWORD mode);
  24. typedef BOOL  (WINAPI *TChannelSetPosition)(DWORD,QWORD,DWORD);
  25. typedef DWORD (WINAPI *TChannelGetLevel)(DWORD);
  26. typedef BOOL  (WINAPI *TChannelFlags)(DWORD,DWORD,DWORD);
  27. typedef double (WINAPI *TChannelBytes2Seconds)(DWORD,QWORD);
  28. typedef BOOL  (WINAPI *TChannelSetAttribute)(DWORD,DWORD,float);
  29. typedef BOOL  (WINAPI *TChannelGetAttribute)(DWORD handle, DWORD attrib, float *value);
  30. typedef DWORD (WINAPI *TChannelIsActive)(DWORD handle);
  31.  
  32. typedef HSTREAM (WINAPI *TStreamCreate)(DWORD,DWORD,DWORD,STREAMPROC,PVOID);
  33. typedef HSTREAM (WINAPI *TStreamCreateFileUser)(DWORD,DWORD,const BASS_FILEPROCS*,void*);
  34. typedef BOOL  (WINAPI *TStreamFree)(HSTREAM);
  35.  
  36. extern TGetVersion          GetVersion;
  37. extern TInit                Init;
  38. extern TFree                Free;
  39. extern TPause               Pause;
  40. extern TStart               Start;
  41. extern TStop                Stop;
  42. extern TGetConfig           GetConfig;
  43. extern TSetConfig           SetConfig;
  44. extern TGetInfo             GetInfo;
  45.  
  46. extern TMusicFree           MusicFree;
  47. extern TMusicLoad           MusicLoad;
  48. extern TChannelPause        ChannelPause;
  49. extern TChannelPlay         ChannelPlay;
  50. extern TChannelStop         ChannelStop;
  51.  
  52. extern TChannelGetPosition  ChannelGetPosition;
  53. extern TChannelSetPosition  ChannelSetPosition;
  54. extern TChannelSetAttribute ChannelSetAttribute;
  55. extern TChannelGetAttribute ChannelGetAttribute;
  56.  
  57. extern TChannelGetLevel     ChannelGetLevel;
  58. extern TErrorGetCode        ErrorGetCode;
  59. extern TChannelFlags        ChannelFlags;
  60. extern TChannelBytes2Seconds ChannelBytes2Seconds;
  61.  
  62. extern TChannelIsActive ChannelIsActive;
  63.  
  64. extern TStreamCreate        StreamCreate;
  65. extern TStreamCreateFileUser StreamCreateFileUser;
  66. extern TStreamFree          StreamFree;
  67.  
  68. extern HMODULE Bass;
  69. extern bool Initialized;
  70.  
  71. void Load();
  72. void Unload();
  73. }
  74.  
  75. #endif
  76.