view dstep/applicationservices/coregraphics/CGColorSpace.d @ 12:9f0b49a2f64e

Added the ApplicationServices frameworks: ATS, ColorSync and CoreGraphics
author Jacob Carlborg <doob@me.com>
date Mon, 03 Aug 2009 14:00:21 +0200
parents
children
line wrap: on
line source

/**
 * Copyright: Copyright (c) 2009 Jacob Carlborg.
 * Authors: Jacob Carlborg
 * Version: Initial created: Aug 1, 2009 
 * License: $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost Software License 1.0)
 */
module dstep.applicationservices.coregraphics.CGColorSpace;

import dstep.applicationservices.coregraphics.CGBase;
import dstep.applicationservices.coregraphics.CGDataProvider;
import dstep.corefoundation.CFBase;
import dstep.corefoundation.CFData;

struct CGColorSpace;

alias CGColorSpace* CGColorSpaceRef;
alias int CGColorRenderingIntent;
alias int CGColorSpaceModel;

extern (C)
{
	extern
	{
		const CFStringRef kCGColorSpaceGenericGray;
		const CFStringRef kCGColorSpaceGenericRGB;
		const CFStringRef kCGColorSpaceGenericCMYK;
		const CFStringRef kCGColorSpaceGenericRGBLinear;
		const CFStringRef kCGColorSpaceAdobeRGB1998;
		const CFStringRef kCGColorSpaceSRGB;
	}
}

enum /*CGColorRenderingIntent*/ 
{
	kCGRenderingIntentDefault,
	kCGRenderingIntentAbsoluteColorimetric,
	kCGRenderingIntentRelativeColorimetric,
	kCGRenderingIntentPerceptual,
	kCGRenderingIntentSaturation
}

enum /*CGColorSpaceModel*/ 
{
	kCGColorSpaceModelUnknown = -1,
	kCGColorSpaceModelMonochrome,
	kCGColorSpaceModelRGB,
	kCGColorSpaceModelCMYK,
	kCGColorSpaceModelLab,
	kCGColorSpaceModelDeviceN,
	kCGColorSpaceModelIndexed,
	kCGColorSpaceModelPattern
}

extern (C)
{
	CGColorSpaceRef CGColorSpaceCreateDeviceGray ();
	CGColorSpaceRef CGColorSpaceCreateDeviceRGB ();
	CGColorSpaceRef CGColorSpaceCreateDeviceCMYK ();
	CGColorSpaceRef CGColorSpaceCreateCalibratedGray (CGFloat* whitePoint, CGFloat* blackPoint, CGFloat gamma);
	CGColorSpaceRef CGColorSpaceCreateCalibratedRGB (CGFloat* whitePoint, CGFloat* blackPoint, CGFloat* gamma, CGFloat* matrix);
	CGColorSpaceRef CGColorSpaceCreateLab (CGFloat* whitePoint, CGFloat* blackPoint, CGFloat* range);
	CGColorSpaceRef CGColorSpaceCreateICCBased (uint nComponents, CGFloat* range, CGDataProviderRef profile, CGColorSpaceRef alternate);
	CGColorSpaceRef CGColorSpaceCreateIndexed (CGColorSpaceRef baseSpace, uint lastIndex, char* colorTable);
	CGColorSpaceRef CGColorSpaceCreatePattern (CGColorSpaceRef baseSpace);
	CGColorSpaceRef CGColorSpaceCreateWithPlatformColorSpace (void* ref_);
	CGColorSpaceRef CGColorSpaceCreateWithName (CFStringRef name);
	CGColorSpaceRef CGColorSpaceRetain (CGColorSpaceRef space);
	void CGColorSpaceRelease (CGColorSpaceRef space);
	uint CGColorSpaceGetTypeID ();
	uint CGColorSpaceGetNumberOfComponents (CGColorSpaceRef space);
	int CGColorSpaceGetModel (CGColorSpaceRef space);
	CGColorSpaceRef CGColorSpaceGetBaseColorSpace (CGColorSpaceRef space);
	uint CGColorSpaceGetColorTableCount (CGColorSpaceRef space);
	void CGColorSpaceGetColorTable (CGColorSpaceRef space, char* table);
	CFDataRef CGColorSpaceCopyICCProfile (CGColorSpaceRef space);
}