home *** CD-ROM | disk | FTP | other *** search
/ Chip: Special Computer Graphics & Animation / Chip-Special-Computergrafik.bin / programs / povray / povsrc.sea / POVSRC / SOURCE / SaveCmpPict.h < prev    next >
Text File  |  1994-02-04  |  4KB  |  112 lines

  1. /*
  2. ==============================================================================
  3. Project:    POV-Ray
  4.  
  5. Version:    2.2
  6.  
  7. File Name:    SaveCmpPict.h
  8.  
  9. Description:
  10.     Routines for saving a PICT file in QuickTime compressed format.
  11.     
  12.     This source code was written with a lot of help from some examples
  13.     off of Apple's QuickTime 1.0 Developer CD.
  14.  
  15.     Note that this source requires the as-yet non-standard header files
  16.     and glue files for QuickTime and the Standard Compression dialog.
  17.     These files will need to accompany this source until Apple rolls them
  18.     into MPW/Think.  The additional files needed are listed below:
  19.     Components.h            - MPW/Think - QuickTime Component header
  20.     ImageCompression.h        - MPW/Think - QuickTime Image Compression header
  21.     StdCompression.h        - MPW/Think - Std Compression dialog header
  22.     StdCompression.rsrc        - MPW/Think - Std Compression dialog resource
  23.     StdCompressionGlue.o    - MPW - Std Compression dialog glue routines
  24.     StdCompressionGlue.╣    - Think - Std Compression dialog glue routines
  25.  
  26. Related Files:
  27.     SaveCmpPict.h: header file for Save Compressed Pict routines
  28.     SaveCmpPict.c: main file for Save Compressed Pict routines
  29. ------------------------------------------------------------------------------
  30. Author:
  31.     Eduard [esp] Schwan
  32. ------------------------------------------------------------------------------
  33.     from Persistence of Vision Raytracer
  34.     Copyright 1993 Persistence of Vision Team
  35. ------------------------------------------------------------------------------
  36.     NOTICE: This source code file is provided so that users may experiment
  37.     with enhancements to POV-Ray and to port the software to platforms other 
  38.     than those supported by the POV-Ray Team.  There are strict rules under
  39.     which you are permitted to use this file.  The rules are in the file
  40.     named POVLEGAL.DOC which should be distributed with this file. If 
  41.     POVLEGAL.DOC is not available or for more info please contact the POV-Ray
  42.     Team Coordinator by leaving a message in CompuServe's Graphics Developer's
  43.     Forum.  The latest version of POV-Ray may be found there as well.
  44.  
  45.     This program is based on the popular DKB raytracer version 2.12.
  46.     DKBTrace was originally written by David K. Buck.
  47.     DKBTrace Ver 2.0-2.12 were written by David K. Buck & Aaron A. Collins.
  48. ------------------------------------------------------------------------------
  49. More Info:
  50.     This Macintosh version of POV-Ray was created and compiled by Jim Nitchals
  51.     (Think 5.0) and Eduard Schwan (MPW 3.2), based (loosely) on the original
  52.     port by Thomas Okken and David Lichtman, with some help from Glenn Sugden.
  53.  
  54.     For bug reports regarding the Macintosh version, you should contact:
  55.     Eduard [esp] Schwan
  56.         CompuServe: 71513,2161
  57.         Internet: jl.tech@applelink.apple.com
  58.         AppleLink: jl.tech
  59.     Jim Nitchals
  60.         Compuserve: 73117,3020
  61.         America Online: JIMN8
  62.         Internet: jimn8@aol.com -or- jimn8@applelink.apple.com
  63.         AppleLink: JIMN8
  64. ------------------------------------------------------------------------------
  65. Change History:
  66.     920414    [esp]    Created.
  67.     920419    [esp]    Embellished file header comments, renamed routines for consistency
  68.     921221    [esp]    Updated includes for QuickTime 1.5 headers
  69.     931001    [esp]    version 2.0 finished (Released on 10/4/93)
  70. ==============================================================================
  71. */
  72.  
  73. #if !defined(SAVECMPPICT_H)
  74. #define SAVECMPPICT_H
  75.  
  76.  
  77. /*==== POV headers ====*/
  78. #include "PovMac.h"
  79.  
  80.  
  81. /*==== Mac Toolbox Headers ====*/
  82. #include <types.h>
  83. #include <files.h>
  84. #include <memory.h>
  85. #include <qdoffscreen.h>
  86.  
  87.  
  88. /*==== QuickTime compression headers ====*/
  89. #if defined (THINK_C)
  90. // THINK C has problems linking to StdCompressionGlue.o, fix it!
  91. #define OpenStdCompression OPENSTDCOMPRESSION
  92. #endif // THINK_C
  93. #include    "ImageCompression.h"
  94. #include    "QuickTimeComponents.h"
  95.  
  96.  
  97. typedef enum {eAFI_ShrinkWholeImage, eAFI_UseCenter}  eAFI_ImagePrefs_t;
  98.  
  99.  
  100.  
  101. OSErr AppendFilePreview2PictF(FSSpec *fsFile);
  102.  
  103. OSErr AppendFinderIcons2PictF(FSSpec *fsFile,
  104.                         Rect *theOriginalPicFrame,
  105.                         eAFI_ImagePrefs_t theImagePrefs);
  106.  
  107. OSErr CompressPictF(ComponentInstance ci,
  108.                         FSSpec *theImageFile);
  109.  
  110.  
  111. #endif // SAVECMPPICT_H
  112.