You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
345 lines
8.0 KiB
345 lines
8.0 KiB
5 years ago
|
/*
|
||
|
File: CGImage.h
|
||
|
|
||
|
Contains: CoreGraphics images
|
||
|
|
||
|
Version: QuickTime 7.3
|
||
|
|
||
|
Copyright: (c) 2007 (c) 2000-2001 by Apple Computer, Inc., all rights reserved.
|
||
|
|
||
|
Bugs?: For bug reports, consult the following page on
|
||
|
the World Wide Web:
|
||
|
|
||
|
http://developer.apple.com/bugreporter/
|
||
|
|
||
|
*/
|
||
|
#ifndef CGIMAGE_H_
|
||
|
#define CGIMAGE_H_
|
||
|
|
||
|
#ifndef __CGBASE__
|
||
|
#include <CGBase.h>
|
||
|
#endif
|
||
|
|
||
|
#ifndef __CGCOLORSPACE__
|
||
|
#include <CGColorSpace.h>
|
||
|
#endif
|
||
|
|
||
|
#ifndef __CGDATAPROVIDER__
|
||
|
#include <CGDataProvider.h>
|
||
|
#endif
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
#if PRAGMA_ONCE
|
||
|
#pragma once
|
||
|
#endif
|
||
|
|
||
|
#ifdef __cplusplus
|
||
|
extern "C" {
|
||
|
#endif
|
||
|
|
||
|
#if PRAGMA_IMPORT
|
||
|
#pragma import on
|
||
|
#endif
|
||
|
|
||
|
#if PRAGMA_ENUM_ALWAYSINT
|
||
|
#if defined(__fourbyteints__) && !__fourbyteints__
|
||
|
#define __CGIMAGE__RESTORE_TWOBYTEINTS
|
||
|
#pragma fourbyteints on
|
||
|
#endif
|
||
|
#pragma enumsalwaysint on
|
||
|
#elif PRAGMA_ENUM_OPTIONS
|
||
|
#pragma option enum=int
|
||
|
#elif PRAGMA_ENUM_PACK
|
||
|
#if __option(pack_enums)
|
||
|
#define __CGIMAGE__RESTORE_PACKED_ENUMS
|
||
|
#pragma options(!pack_enums)
|
||
|
#endif
|
||
|
#endif
|
||
|
|
||
|
typedef struct CGImage* CGImageRef;
|
||
|
enum CGImageAlphaInfo {
|
||
|
kCGImageAlphaNone = 0,
|
||
|
kCGImageAlphaPremultipliedLast = 1, /* For example, premultiplied RGBA */
|
||
|
kCGImageAlphaPremultipliedFirst = 2, /* For example, premultiplied ARGB */
|
||
|
kCGImageAlphaLast = 3, /* For example, non-premultiplied RGBA */
|
||
|
kCGImageAlphaFirst = 4, /* For example, non-premultiplied ARGB */
|
||
|
kCGImageAlphaNoneSkipLast = 5, /* Equivalent to kCGImageAlphaNone. */
|
||
|
kCGImageAlphaNoneSkipFirst = 6
|
||
|
};
|
||
|
typedef enum CGImageAlphaInfo CGImageAlphaInfo;
|
||
|
|
||
|
|
||
|
/* Create an image. */
|
||
|
/*
|
||
|
* CGImageCreate()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( CGImageRef )
|
||
|
CGImageCreate(
|
||
|
size_t width,
|
||
|
size_t height,
|
||
|
size_t bitsPerComponent,
|
||
|
size_t bitsPerPixel,
|
||
|
size_t bytesPerRow,
|
||
|
CGColorSpaceRef colorspace,
|
||
|
CGImageAlphaInfo alphaInfo,
|
||
|
CGDataProviderRef provider,
|
||
|
const float decode[],
|
||
|
int shouldInterpolate,
|
||
|
CGColorRenderingIntent intent);
|
||
|
|
||
|
|
||
|
/* Create an image mask. */
|
||
|
/*
|
||
|
* CGImageMaskCreate()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( CGImageRef )
|
||
|
CGImageMaskCreate(
|
||
|
size_t width,
|
||
|
size_t height,
|
||
|
size_t bitsPerComponent,
|
||
|
size_t bitsPerPixel,
|
||
|
size_t bytesPerRow,
|
||
|
CGDataProviderRef provider,
|
||
|
const float decode[],
|
||
|
int shouldInterpolate);
|
||
|
|
||
|
|
||
|
/* Create an image from `source', a data provider of JPEG-encoded data. */
|
||
|
/*
|
||
|
* CGImageCreateWithJPEGDataProvider()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: in version 10.1 and later
|
||
|
*/
|
||
|
EXTERN_API_C( CGImageRef )
|
||
|
CGImageCreateWithJPEGDataProvider(
|
||
|
CGDataProviderRef source,
|
||
|
const float decode[],
|
||
|
int shouldInterpolate,
|
||
|
CGColorRenderingIntent intent);
|
||
|
|
||
|
|
||
|
/* Increment the retain count of `image' and return it. All images are
|
||
|
* created with an initial retain count of 1. */
|
||
|
/*
|
||
|
* CGImageRetain()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( CGImageRef )
|
||
|
CGImageRetain(CGImageRef image);
|
||
|
|
||
|
|
||
|
/* Decrement the retain count of `image'. If the retain count reaches 0,
|
||
|
* then release it and any associated resources. */
|
||
|
/*
|
||
|
* CGImageRelease()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( void )
|
||
|
CGImageRelease(CGImageRef image);
|
||
|
|
||
|
|
||
|
/* Return 1 if `image' is an image mask, 0 otherwise. */
|
||
|
/*
|
||
|
* CGImageIsMask()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( int )
|
||
|
CGImageIsMask(CGImageRef image);
|
||
|
|
||
|
|
||
|
/* Return the width of `image'. */
|
||
|
/*
|
||
|
* CGImageGetWidth()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( size_t )
|
||
|
CGImageGetWidth(CGImageRef image);
|
||
|
|
||
|
|
||
|
/* Return the height of `image'. */
|
||
|
/*
|
||
|
* CGImageGetHeight()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( size_t )
|
||
|
CGImageGetHeight(CGImageRef image);
|
||
|
|
||
|
|
||
|
/* Return the number of bits/component of `image'. */
|
||
|
/*
|
||
|
* CGImageGetBitsPerComponent()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( size_t )
|
||
|
CGImageGetBitsPerComponent(CGImageRef image);
|
||
|
|
||
|
|
||
|
/* Return the number of bits/pixel of `image'. */
|
||
|
/*
|
||
|
* CGImageGetBitsPerPixel()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( size_t )
|
||
|
CGImageGetBitsPerPixel(CGImageRef image);
|
||
|
|
||
|
|
||
|
/* Return the number of bytes/row of `image'. */
|
||
|
/*
|
||
|
* CGImageGetBytesPerRow()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( size_t )
|
||
|
CGImageGetBytesPerRow(CGImageRef image);
|
||
|
|
||
|
|
||
|
/* Return the colorspace of `image', or NULL if `image' is an image
|
||
|
* mask. */
|
||
|
/*
|
||
|
* CGImageGetColorSpace()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( CGColorSpaceRef )
|
||
|
CGImageGetColorSpace(CGImageRef image);
|
||
|
|
||
|
|
||
|
/* Return the alpha info of `image'. */
|
||
|
/*
|
||
|
* CGImageGetAlphaInfo()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( CGImageAlphaInfo )
|
||
|
CGImageGetAlphaInfo(CGImageRef image);
|
||
|
|
||
|
|
||
|
/*Return the data provider of `image'. */
|
||
|
/*
|
||
|
* CGImageGetDataProvider()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( CGDataProviderRef )
|
||
|
CGImageGetDataProvider(CGImageRef image);
|
||
|
|
||
|
|
||
|
/* Return the decode array of `image'. */
|
||
|
/*
|
||
|
* CGImageGetDecode()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( const float * )
|
||
|
CGImageGetDecode(CGImageRef image);
|
||
|
|
||
|
|
||
|
/* Return the interpolation parameter of `image'. */
|
||
|
/*
|
||
|
* CGImageGetShouldInterpolate()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( int )
|
||
|
CGImageGetShouldInterpolate(CGImageRef image);
|
||
|
|
||
|
|
||
|
/* Return the rendering intent of `image'. */
|
||
|
/*
|
||
|
* CGImageGetRenderingIntent()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( CGColorRenderingIntent )
|
||
|
CGImageGetRenderingIntent(CGImageRef image);
|
||
|
|
||
|
|
||
|
|
||
|
#if PRAGMA_ENUM_ALWAYSINT
|
||
|
#pragma enumsalwaysint reset
|
||
|
#ifdef __CGIMAGE__RESTORE_TWOBYTEINTS
|
||
|
#pragma fourbyteints off
|
||
|
#endif
|
||
|
#elif PRAGMA_ENUM_OPTIONS
|
||
|
#pragma option enum=reset
|
||
|
#elif defined(__CGIMAGE__RESTORE_PACKED_ENUMS)
|
||
|
#pragma options(pack_enums)
|
||
|
#endif
|
||
|
|
||
|
#ifdef PRAGMA_IMPORT_OFF
|
||
|
#pragma import off
|
||
|
#elif PRAGMA_IMPORT
|
||
|
#pragma import reset
|
||
|
#endif
|
||
|
|
||
|
#ifdef __cplusplus
|
||
|
}
|
||
|
#endif
|
||
|
|
||
|
#endif /* CGIMAGE_H_ */
|
||
|
|