CMConversions.h
上传用户:xjjlds
上传日期:2015-12-05
资源大小:22823k
文件大小:7k
源码类别:

多媒体编程

开发平台:

Visual C++

  1. /*
  2.      File:       CMConversions.h
  3.  
  4.      Contains:   ColorSync Conversion Component API
  5.  
  6.      Version:    Technology: ColorSync 2.0
  7.                  Release:    QuickTime 6.0.2
  8.  
  9.      Copyright:  (c) 1993-2001 by Apple Computer, Inc. All rights reserved.
  10.  
  11.      Bugs?:      For bug reports, consult the following page on
  12.                  the World Wide Web:
  13.  
  14.                      http://developer.apple.com/bugreporter/
  15.  
  16. */
  17. #ifndef __CMCONVERSIONS__
  18. #define __CMCONVERSIONS__
  19. #ifndef __MACTYPES__
  20. #include "MacTypes.h"
  21. #endif
  22. #ifndef __COMPONENTS__
  23. #include "Components.h"
  24. #endif
  25. #ifndef __CMAPPLICATION__
  26. #include "CMApplication.h"
  27. #endif
  28. #if PRAGMA_ONCE
  29. #pragma once
  30. #endif
  31. #ifdef __cplusplus
  32. extern "C" {
  33. #endif
  34. #if PRAGMA_IMPORT
  35. #pragma import on
  36. #endif
  37. #if PRAGMA_STRUCT_ALIGN
  38.     #pragma options align=mac68k
  39. #elif PRAGMA_STRUCT_PACKPUSH
  40.     #pragma pack(push, 2)
  41. #elif PRAGMA_STRUCT_PACK
  42.     #pragma pack(2)
  43. #endif
  44. enum {
  45.     CMConversionInterfaceVersion = 1
  46. };
  47. /* Component function selectors */
  48. enum {
  49.     kCMXYZToLab                 = 0,
  50.     kCMLabToXYZ                 = 1,
  51.     kCMXYZToLuv                 = 2,
  52.     kCMLuvToXYZ                 = 3,
  53.     kCMXYZToYxy                 = 4,
  54.     kCMYxyToXYZ                 = 5,
  55.     kCMRGBToHLS                 = 6,
  56.     kCMHLSToRGB                 = 7,
  57.     kCMRGBToHSV                 = 8,
  58.     kCMHSVToRGB                 = 9,
  59.     kCMRGBToGRAY                = 10,
  60.     kCMXYZToFixedXYZ            = 11,
  61.     kCMFixedXYZToXYZ            = 12
  62. };
  63. #if CALL_NOT_IN_CARBON
  64. EXTERN_API( ComponentResult )
  65. CMXYZToLab                      (ComponentInstance      ci,
  66.                                  const CMColor *        src,
  67.                                  const CMXYZColor *     white,
  68.                                  CMColor *              dst,
  69.                                  unsigned long          count)                              FIVEWORDINLINE(0x2F3C, 0x0010, 0x0000, 0x7000, 0xA82A);
  70. EXTERN_API( ComponentResult )
  71. CMLabToXYZ                      (ComponentInstance      ci,
  72.                                  const CMColor *        src,
  73.                                  const CMXYZColor *     white,
  74.                                  CMColor *              dst,
  75.                                  unsigned long          count)                              FIVEWORDINLINE(0x2F3C, 0x0010, 0x0001, 0x7000, 0xA82A);
  76. EXTERN_API( ComponentResult )
  77. CMXYZToLuv                      (ComponentInstance      ci,
  78.                                  const CMColor *        src,
  79.                                  const CMXYZColor *     white,
  80.                                  CMColor *              dst,
  81.                                  unsigned long          count)                              FIVEWORDINLINE(0x2F3C, 0x0010, 0x0002, 0x7000, 0xA82A);
  82. EXTERN_API( ComponentResult )
  83. CMLuvToXYZ                      (ComponentInstance      ci,
  84.                                  const CMColor *        src,
  85.                                  const CMXYZColor *     white,
  86.                                  CMColor *              dst,
  87.                                  unsigned long          count)                              FIVEWORDINLINE(0x2F3C, 0x0010, 0x0003, 0x7000, 0xA82A);
  88. EXTERN_API( ComponentResult )
  89. CMXYZToYxy                      (ComponentInstance      ci,
  90.                                  const CMColor *        src,
  91.                                  CMColor *              dst,
  92.                                  unsigned long          count)                              FIVEWORDINLINE(0x2F3C, 0x000C, 0x0004, 0x7000, 0xA82A);
  93. EXTERN_API( ComponentResult )
  94. CMYxyToXYZ                      (ComponentInstance      ci,
  95.                                  const CMColor *        src,
  96.                                  CMColor *              dst,
  97.                                  unsigned long          count)                              FIVEWORDINLINE(0x2F3C, 0x000C, 0x0005, 0x7000, 0xA82A);
  98. EXTERN_API( ComponentResult )
  99. CMRGBToHLS                      (ComponentInstance      ci,
  100.                                  const CMColor *        src,
  101.                                  CMColor *              dst,
  102.                                  unsigned long          count)                              FIVEWORDINLINE(0x2F3C, 0x000C, 0x0006, 0x7000, 0xA82A);
  103. EXTERN_API( ComponentResult )
  104. CMHLSToRGB                      (ComponentInstance      ci,
  105.                                  const CMColor *        src,
  106.                                  CMColor *              dst,
  107.                                  unsigned long          count)                              FIVEWORDINLINE(0x2F3C, 0x000C, 0x0007, 0x7000, 0xA82A);
  108. EXTERN_API( ComponentResult )
  109. CMRGBToHSV                      (ComponentInstance      ci,
  110.                                  const CMColor *        src,
  111.                                  CMColor *              dst,
  112.                                  unsigned long          count)                              FIVEWORDINLINE(0x2F3C, 0x000C, 0x0008, 0x7000, 0xA82A);
  113. EXTERN_API( ComponentResult )
  114. CMHSVToRGB                      (ComponentInstance      ci,
  115.                                  const CMColor *        src,
  116.                                  CMColor *              dst,
  117.                                  unsigned long          count)                              FIVEWORDINLINE(0x2F3C, 0x000C, 0x0009, 0x7000, 0xA82A);
  118. EXTERN_API( ComponentResult )
  119. CMRGBToGray                     (ComponentInstance      ci,
  120.                                  const CMColor *        src,
  121.                                  CMColor *              dst,
  122.                                  unsigned long          count)                              FIVEWORDINLINE(0x2F3C, 0x000C, 0x000A, 0x7000, 0xA82A);
  123. EXTERN_API( ComponentResult )
  124. CMXYZToFixedXYZ                 (ComponentInstance      ci,
  125.                                  const CMXYZColor *     src,
  126.                                  CMFixedXYZColor *      dst,
  127.                                  unsigned long          count)                              FIVEWORDINLINE(0x2F3C, 0x000C, 0x000B, 0x7000, 0xA82A);
  128. EXTERN_API( ComponentResult )
  129. CMFixedXYZToXYZ                 (ComponentInstance      ci,
  130.                                  const CMFixedXYZColor * src,
  131.                                  CMXYZColor *           dst,
  132.                                  unsigned long          count)                              FIVEWORDINLINE(0x2F3C, 0x000C, 0x000C, 0x7000, 0xA82A);
  133. #endif  /* CALL_NOT_IN_CARBON */
  134. #if PRAGMA_STRUCT_ALIGN
  135.     #pragma options align=reset
  136. #elif PRAGMA_STRUCT_PACKPUSH
  137.     #pragma pack(pop)
  138. #elif PRAGMA_STRUCT_PACK
  139.     #pragma pack()
  140. #endif
  141. #ifdef PRAGMA_IMPORT_OFF
  142. #pragma import off
  143. #elif PRAGMA_IMPORT
  144. #pragma import reset
  145. #endif
  146. #ifdef __cplusplus
  147. }
  148. #endif
  149. #endif /* __CMCONVERSIONS__ */