home *** CD-ROM | disk | FTP | other *** search
/ MacFormat 1995 July / macformat-026.iso / mac / Shareware City / Developers / SoundMate Plug-In Kit / SoundEffect.h < prev    next >
Encoding:
C/C++ Source or Header  |  1993-12-21  |  1.5 KB  |  68 lines  |  [TEXT/KAHL]

  1. /*****
  2.  * SoundEffect.h
  3.  *
  4.  *    SoundEditor: Copyright (c) 1993 by
  5.  *
  6.  *    Motion Works Corp.
  7.  *    #130 - 1020 Mainland Street
  8.  *    Vancouver, BC
  9.  *    (604) 685-9975
  10.  *
  11.  *  Author:    DMS        (13SEP93)
  12.  *
  13.  *    generic sound effect (SE) component header for Marvin's Modulator
  14.  *
  15.  *****/
  16.  
  17. #pragma once
  18.  
  19. #ifndef    _SOUNDEFFECTCOMPONENT_
  20. #define    _SOUNDEFFECTCOMPONENT_
  21.  
  22. #include <QuickTimeComponents.h>
  23. #include <Sound.h>
  24.  
  25. #define    kSoundEffectComponentType    'MMSE'
  26.  
  27. typedef    struct    PrivateGlobals
  28. {
  29.     Component self;        // Our component ID
  30. }
  31. PrivateGlobals, *PrivateGlobalsPtr, **PrivateGlobalsHdl;
  32.  
  33.  
  34.     // Comment out this flag when building a standalone component
  35.     // (it's only of use if you have the source code to Marvin's Modulator)
  36. //#define DEBUG_SOUND_EFFECT    
  37.  
  38.     // prototype of function used to register component when debugging
  39.  
  40. pascal ComponentResult SoundEffectDispatcher( ComponentParameters *params, Handle storage );
  41.  
  42.  
  43.     // sound effect component request code
  44. enum
  45. {
  46.     kDoEffect = 1,
  47.     kWorksOnSelectionOnly
  48. };
  49.  
  50.  
  51.     
  52.     // Public interfaces
  53.  
  54. pascal    ComponentResult SEDoEffect (    ComponentInstance SEInstance,
  55.                                         Handle theSound,
  56.                                         Size *newSelectionStart, Size *newSelectionEnd,
  57.                                         Handle *newSound,
  58.                                         Size *insertStart, Size *deleteEnd
  59.                                    )
  60.                                  = ComponentCallNow( kDoEffect, 24 );
  61.  
  62. pascal ComponentResult SEWorksOnSelectionOnly(    ComponentInstance SEInstance,
  63.                                                 Boolean *answer
  64.                                              )
  65.                                  = ComponentCallNow( kWorksOnSelectionOnly, 4 );
  66.  
  67. #endif _SOUNDEFFECTCOMPONENT_
  68.