home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 2000 November: Tool Chest / Dev.CD Nov 00 TC Disk 1.toast / Sample Code / Contributed / SpriteWorld / SpriteWorld Files / Utils / SWSounds.h < prev    next >
Encoding:
Text File  |  2000-10-06  |  1.8 KB  |  64 lines  |  [TEXT/CWIE]

  1. ///--------------------------------------------------------------------------------------
  2. // SWSounds.h
  3. ///--------------------------------------------------------------------------------------
  4.  
  5. #ifndef __SWSOUNDS__
  6. #define __SWSOUNDS__
  7.  
  8. #include <Sound.h>        // Include MacOS Sound header
  9. #include <Sprite.h>        // Needs Sprite.h for GetStereoPositionOfSprite
  10.  
  11. #define k22khz        1.0
  12.  
  13. typedef enum
  14. {
  15.     kFindEmptyChannel = 1,
  16.     kPlaySoundInChannel,
  17.     kReplaceSameSound
  18. } PlayType;
  19.  
  20.  
  21. Boolean IsNewSoundManagerInstalled( void );
  22. void    SetSystemVolume(short volume);
  23. void    GetSystemVolume(short *volume);
  24. void    SaveSystemVolume( void );
  25. void    RestoreSystemVolume( void );
  26. OSErr    CreateSoundChannels(short numChannels);
  27. void    DisposeSoundChannels( void );
  28. OSErr    LoadSounds( short startResID, short numSounds );
  29. void    DisposeSounds( void );
  30.  
  31. void    PlaySound(
  32.     short soundID, 
  33.     short channelNum, 
  34.     PlayType playType);
  35.  
  36. void    PlaySound2(
  37.     short soundID, 
  38.     short channelNum, 
  39.     PlayType playType,
  40.     short volume,
  41.     short stereoPosition,
  42.     double rate,
  43.     Boolean doLoopingSound);
  44.  
  45. short    FindChannel(short soundID, short channelNum, PlayType playType);
  46.  
  47. void    PlayMySound(short soundID, short channelNum);
  48. void    StopMySound(short soundID);
  49. void    StopChannel(short channelNum);
  50.  
  51. void    SetChannelVolume(short channelNum, short newVolume);
  52. void    SetChannelRate(short channelNum, double newPitch);
  53. void    SetStereoPosition(short channelNum, short stereoPosition);
  54. void    SetVolumeAndStereoPosition(short channelNum, short newVolume, short stereoPosition);
  55. void    SetChannelAvailability(short channelNum, Boolean isAvailable);
  56. void    SetStereoMode(Boolean mode);
  57. short    GetStereoPositionOfSprite(SpritePtr srcSpriteP, Rect *destRectP);
  58. short    GetStereoPositionOfColumn(long col, Rect *backRectP);
  59. short    FindSound(short soundID);
  60.  
  61. pascal void SoundCallBack(SndChannelPtr theChannel, SndCommand *theCommand);
  62.  
  63. #endif    // __SWSOUNDS__
  64.