view dstep/applicationservices/coregraphics/CGDirectDisplay.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.CGDirectDisplay;

//import dstep.AvailabilityMacros;
import dstep.corefoundation.CoreFoundation;

import dstep.applicationservices.coregraphics.CGBase;
import dstep.applicationservices.coregraphics.CGContext;
import dstep.applicationservices.coregraphics.CGError;
import dstep.applicationservices.coregraphics.CGGeometry;
/*import dstep.mach.boolean;
import dstep.stdint;*/

struct _CGDirectPaletteRef;

alias uint CGDirectDisplayID;
alias _CGDirectPaletteRef* CGDirectPaletteRef;
alias uint CGDisplayCount;
alias uint CGTableCount;
alias int CGDisplayCoord;
alias ubyte CGByteValue;
alias uint CGOpenGLDisplayMask;
alias uint CGBeamPosition;
alias int CGMouseDelta;
alias double CGRefreshRate;
alias uint CGCaptureOptions;
alias int CGDisplayErr;
alias float CGGammaValue;

enum
{
	kCGCaptureNoOptions = 0,
	kCGCaptureNoFill = (1 << 0)
}

extern (C)
{
	uint CGMainDisplayID ();
	int CGGetDisplaysWithPoint (CGPoint point, uint maxDisplays, CGDirectDisplayID* dspys, CGDisplayCount* dspyCnt);
	int CGGetDisplaysWithRect (CGRect rect, uint maxDisplays, CGDirectDisplayID* dspys, CGDisplayCount* dspyCnt);
	int CGGetDisplaysWithOpenGLDisplayMask (uint mask, uint maxDisplays, CGDirectDisplayID* dspys, CGDisplayCount* dspyCnt);
	int CGGetActiveDisplayList (uint maxDisplays, CGDirectDisplayID* activeDspys, CGDisplayCount* dspyCnt);
	int CGGetOnlineDisplayList (uint maxDisplays, CGDirectDisplayID* onlineDspys, CGDisplayCount* dspyCnt);
	uint CGDisplayIDToOpenGLDisplayMask (uint display);
	uint CGOpenGLDisplayMaskToDisplayID (uint mask);
	CGRect CGDisplayBounds (uint display);
	uint CGDisplayPixelsWide (uint display);
	uint CGDisplayPixelsHigh (uint display);
	CFArrayRef CGDisplayAvailableModes (uint display);
	CFDictionaryRef CGDisplayBestModeForParameters (uint display, uint bitsPerPixel, uint width, uint height, bool* exactMatch);
	CFDictionaryRef CGDisplayBestModeForParametersAndRefreshRate (uint display, uint bitsPerPixel, uint width, uint height, double refresh, bool* exactMatch);
	CFDictionaryRef CGDisplayBestModeForParametersAndRefreshRateWithProperty (uint display, uint bitsPerPixel, uint width, uint height, double refresh, CFStringRef property, bool* exactMatch);
	CFDictionaryRef CGDisplayCurrentMode (uint display);
	int CGDisplaySwitchToMode (uint display, CFDictionaryRef mode);
	uint CGDisplayBitsPerPixel (uint display);
	uint CGDisplayBitsPerSample (uint display);
	uint CGDisplaySamplesPerPixel (uint display);
	uint CGDisplayBytesPerRow (uint display);
	int CGSetDisplayTransferByFormula (uint display, float redMin, float redMax, float redGamma, float greenMin, float greenMax, float greenGamma, float blueMin, float blueMax, float blueGamma);
	int CGGetDisplayTransferByFormula (uint display, CGGammaValue* redMin, CGGammaValue* redMax, CGGammaValue* redGamma, CGGammaValue* greenMin, CGGammaValue* greenMax, CGGammaValue* greenGamma, CGGammaValue* blueMin, CGGammaValue* blueMax, CGGammaValue* blueGamma);
	uint CGDisplayGammaTableCapacity (uint display);
	int CGSetDisplayTransferByTable (uint display, uint tableSize, CGGammaValue* redTable, CGGammaValue* greenTable, CGGammaValue* blueTable);
	int CGGetDisplayTransferByTable (uint display, uint capacity, CGGammaValue* redTable, CGGammaValue* greenTable, CGGammaValue* blueTable, CGTableCount* sampleCount);
	int CGSetDisplayTransferByByteTable (uint display, uint tableSize, char* redTable, char* greenTable, char* blueTable);
	void CGDisplayRestoreColorSyncSettings ();
	int CGDisplayIsCaptured (uint display);
	int CGDisplayCapture (uint display);
	int CGDisplayCaptureWithOptions (uint display, uint options);
	int CGDisplayRelease (uint display);
	int CGCaptureAllDisplays ();
	int CGCaptureAllDisplaysWithOptions (uint options);
	int CGReleaseAllDisplays ();
	uint CGShieldingWindowID (uint display);
	int CGShieldingWindowLevel ();
	void* CGDisplayBaseAddress (uint display);
	void* CGDisplayAddressForPosition (uint display, int x, int y);
	int CGDisplayHideCursor (uint display);
	int CGDisplayShowCursor (uint display);
	int CGDisplayMoveCursorToPoint (uint display, CGPoint point);
	void CGGetLastMouseDelta (CGMouseDelta* deltaX, CGMouseDelta* deltaY);
	int CGDisplayCanSetPalette (uint display);
	int CGDisplaySetPalette (uint display, CGDirectPaletteRef palette);
	int CGDisplayWaitForBeamPositionOutsideLines (uint display, uint upperScanLine, uint lowerScanLine);
	uint CGDisplayBeamPosition (uint display);
	CGContextRef CGDisplayGetDrawingContext (uint display);
}