home *** CD-ROM | disk | FTP | other *** search
/ MacHack 2000 / MacHack 2000.toast / pc / The Hacks / Vertigo / RenderEngine / DrawingFunctions.h < prev    next >
Encoding:
Text File  |  2000-06-24  |  1.5 KB  |  61 lines

  1. ///////////////////////////////////////////////////////////////////////////////
  2. //
  3. //    File:        DrawingFunctions.h
  4. //
  5. //    Project:    MacHack 2000 - Vertigo!
  6. //    Authors:    Darrin Cardani, Drew Thaler, Ed Wynne
  7. //
  8. //    Date:        06/23/2000 (written entirely during the conference!)
  9. //
  10. ///////////////////////////////////////////////////////////////////////////////
  11.  
  12. #ifndef _H_DrawingFunctions
  13. #define _H_DrawingFunctions
  14.  
  15. #include <Quickdraw.h>
  16. #include <QDOffscreen.h>
  17.  
  18. #include "DrawingUtils.h"
  19.  
  20.  
  21. #ifdef __cplusplus
  22. extern "C" {
  23. #endif
  24.  
  25. // Renders drop shadows into a scratch GWorld.  
  26. void RenderDropShadows(const GWorldPtr screenGWorld,
  27.                         GWorldPtr dropShadowWorld, 
  28.                         RgnHandle maskRgn,
  29.                         RegionList &windowRegions);
  30.  
  31. // Copies a region from the drop-shadow world into another scratch GWorld, and
  32. //    fills the region border with white.
  33. void CopyRegionForRedShifting(const GWorldPtr dropShadowWorld,
  34.                                 GWorldPtr preShiftWorld,
  35.                                 RgnHandle rgn);
  36.  
  37. // Does a red-shift and blur into yet another scratch GWorld.
  38. void RedShiftAndBlur(const GWorldPtr preShiftWorld,
  39.                         GWorldPtr scratchWorld,
  40.                         GWorldPtr postShiftWorld,
  41.                         RgnHandle rgn,
  42.                         int shift);
  43.  
  44. void RedShiftAndBlurRect(const GWorldPtr preShiftWorld,
  45.                         GWorldPtr scratchWorld,
  46.                         GWorldPtr postShiftWorld,
  47.                         const Rect *rect,
  48.                         int shift);
  49.  
  50. // Copies the drop shadowed, shifted, blurred, output into the composite.
  51. void CopyIntoComposite(const GWorldPtr srcWorld,
  52.                         GWorldPtr compositeWorld,
  53.                         RgnHandle rgn);
  54.  
  55. #ifdef __cplusplus
  56. }
  57. #endif
  58.  
  59.  
  60. #endif // _H_DrawingFunctions
  61.