Subversion Repositories pentevo

Rev

Rev 716 | Blame | Last modification | View Log | Download | RSS feed

  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 DWORD (WINAPI *TChannelIsActive)(DWORD handle);
  30.  
  31. typedef HSTREAM (WINAPI *TStreamCreate)(DWORD,DWORD,DWORD,STREAMPROC,PVOID);
  32. typedef HSTREAM (WINAPI *TStreamCreateFileUser)(DWORD,DWORD,const BASS_FILEPROCS*,void*);
  33. typedef BOOL  (WINAPI *TStreamFree)(HSTREAM);
  34.  
  35. extern TGetVersion          GetVersion;
  36. extern TInit                Init;
  37. extern TFree                Free;
  38. extern TPause               Pause;
  39. extern TStart               Start;
  40. extern TStop                Stop;
  41. extern TGetConfig           GetConfig;
  42. extern TSetConfig           SetConfig;
  43. extern TGetInfo             GetInfo;
  44.  
  45. extern TMusicFree           MusicFree;
  46. extern TMusicLoad           MusicLoad;
  47. extern TChannelPause        ChannelPause;
  48. extern TChannelPlay         ChannelPlay;
  49. extern TChannelStop         ChannelStop;
  50.  
  51. extern TChannelGetPosition  ChannelGetPosition;
  52. extern TChannelSetPosition  ChannelSetPosition;
  53. extern TChannelSetAttribute ChannelSetAttribute;
  54. extern TChannelGetLevel     ChannelGetLevel;
  55. extern TErrorGetCode        ErrorGetCode;
  56. extern TChannelFlags        ChannelFlags;
  57. extern TChannelBytes2Seconds ChannelBytes2Seconds;
  58.  
  59. extern TChannelIsActive ChannelIsActive;
  60.  
  61. extern TStreamCreate        StreamCreate;
  62. extern TStreamCreateFileUser StreamCreateFileUser;
  63. extern TStreamFree          StreamFree;
  64.  
  65. extern HMODULE Bass;
  66. void Load();
  67. void Unload();
  68. }
  69.  
  70. #endif
  71.