-extern "C" int CoreSurfaceAcceleratorCreate(CFAllocatorRef allocator, void *type, CoreSurfaceAcceleratorRef *accel);
-extern "C" unsigned int CoreSurfaceAcceleratorTransferSurface(CoreSurfaceAcceleratorRef accelerator, CoreSurfaceBufferRef dest, CoreSurfaceBufferRef src, CFDictionaryRef options/*, void *, void *, void **/);
+#endif
+
+typedef void *IOSurfaceRef;
+
+extern CFStringRef kIOSurfaceIsGlobal;
+extern CFStringRef kIOSurfaceMemoryRegion;
+extern CFStringRef kIOSurfaceBytesPerRow;
+extern CFStringRef kIOSurfaceWidth;
+extern CFStringRef kIOSurfaceHeight;
+extern CFStringRef kIOSurfacePixelFormat;
+extern CFStringRef kIOSurfaceAllocSize;
+
+extern "C" IOSurfaceRef IOSurfaceCreate(CFDictionaryRef dict);
+extern "C" int IOSurfaceLock(IOSurfaceRef surface, unsigned int lockType);
+extern "C" int IOSurfaceUnlock(IOSurfaceRef surface);
+extern "C" void *IOSurfaceGetBaseAddress(IOSurfaceRef surface);
+
+extern "C" void IOSurfaceFlushProcessorCaches(IOSurfaceRef buffer);
+
+typedef void *IOSurfaceAcceleratorRef;
+
+extern "C" int IOSurfaceAcceleratorCreate(CFAllocatorRef allocator, void *type, IOSurfaceAcceleratorRef *accel);
+extern "C" unsigned int IOSurfaceAcceleratorTransferSurface(IOSurfaceAcceleratorRef accelerator, IOSurfaceRef dest, IOSurfaceRef src, CFDictionaryRef options/*, void *, void *, void **/);