view dstep/corevideo/CVOpenGLTextureCache.d @ 16:19885b43130e

Huge update, the bridge actually works now
author Jacob Carlborg <doob@me.com>
date Sun, 03 Jan 2010 22:06:11 +0100
parents
children
line wrap: on
line source

/**
 * Copyright: Copyright (c) 2009 Jacob Carlborg.
 * Authors: Jacob Carlborg
 * Version: Initial created: Sep 24, 2009 
 * License: $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost Software License 1.0)
 */
module dstep.corevideo.CVOpenGLTextureCache;

import dstep.corefoundation.CFBase;
import dstep.corefoundation.CFDictionary;
import dstep.corevideo.CVBase;
import dstep.corevideo.CVBuffer;
import dstep.corevideo.CVImageBuffer;
import dstep.corevideo.CVOpenGLTexture;
import dstep.corevideo.CVReturn;
import dstep.opengl.OpenGL;

struct __CVOpenGLTextureCache;

alias __CVOpenGLTextureCache* CVOpenGLTextureCacheRef;

extern (C)
{
	extern
	{
		const CFStringRef kCVOpenGLTextureCacheChromaSamplingModeKey;
		const CFStringRef kCVOpenGLTextureCacheChromaSamplingModeAutomatic;
		const CFStringRef kCVOpenGLTextureCacheChromaSamplingModeHighestQuality;
		const CFStringRef kCVOpenGLTextureCacheChromaSamplingModeBestPerformance;
	}
}

extern (C)
{
	uint CVOpenGLTextureCacheGetTypeID ();
	CVOpenGLTextureCacheRef CVOpenGLTextureCacheRetain (CVOpenGLTextureCacheRef textureCache);
	void CVOpenGLTextureCacheRelease (CVOpenGLTextureCacheRef textureCache);
	int CVOpenGLTextureCacheCreate (CFAllocatorRef allocator, CFDictionaryRef cacheAttributes, CGLContextObj cglContext, CGLPixelFormatObj cglPixelFormat, CFDictionaryRef textureAttributes, CVOpenGLTextureCacheRef* cacheOut);
	int CVOpenGLTextureCacheCreateTextureFromImage (CFAllocatorRef allocator, CVOpenGLTextureCacheRef textureCache, CVImageBufferRef sourceImage, CFDictionaryRef attributes, CVOpenGLTextureRef* textureOut);
	void CVOpenGLTextureCacheFlush (CVOpenGLTextureCacheRef textureCache, ulong options);
}