Remove uses of CACFContextRef and CARender* from WebCore
[WebKit-https.git] / WebKitLibraries / win / include / WebKitSystemInterface / WebKitSystemInterface.h
index 445b292..ae840ae 100644 (file)
 
 struct CGAffineTransform;
 struct CGPoint;
+struct CGRect;
 struct CGSize;
+struct IDirect3DDevice9;
+struct WKCACFContext;
+struct WKCACFUpdateRectEnumerator;
 
+typedef struct _CACFLayer* CACFLayerRef;
 typedef const struct __CFData* CFDataRef;
 typedef const struct __CFString* CFStringRef;
+typedef double CFTimeInterval;
 typedef struct CGColor* CGColorRef;
 typedef struct CGContext* CGContextRef;
 typedef unsigned short CGFontIndex;
 typedef struct CGFont* CGFontRef;
 typedef CGFontIndex CGGlyph;
 typedef wchar_t UChar;
+typedef struct _CFURLCredential* CFURLCredentialRef;
 typedef struct _CFURLResponse* CFURLResponseRef;
 typedef struct OpaqueCFHTTPCookieStorage*  CFHTTPCookieStorageRef;
 typedef struct _CFURLRequest* CFMutableURLRequestRef;
 typedef const struct _CFURLRequest* CFURLRequestRef;
-typedef struct _CFURLCredential* CFURLCredentialRef;
 typedef struct __CFHTTPMessage* CFHTTPMessageRef;
 typedef const struct __CFNumber* CFNumberRef;
 typedef struct __CFReadStream* CFReadStreamRef;
@@ -50,6 +56,12 @@ typedef const struct __CFURL* CFURLRef;
 typedef struct _CFURLProtectionSpace* CFURLProtectionSpaceRef;
 typedef struct tagLOGFONTW LOGFONTW;
 typedef LOGFONTW LOGFONT;
+typedef struct _CACFLayer *CACFLayerRef;
+typedef struct __CVBuffer *CVBufferRef;
+typedef CVBufferRef CVImageBufferRef;
+typedef CVImageBufferRef CVPixelBufferRef;
+typedef struct _CAImageQueue *CAImageQueueRef;
+typedef unsigned long CFTypeID;
 
 void wkSetFontSmoothingLevel(int type);
 int wkGetFontSmoothingLevel();
@@ -89,4 +101,57 @@ CFURLCredentialRef wkCopyCredentialFromCFPersistentStorage(CFURLProtectionSpaceR
 
 CFStringRef wkCFNetworkErrorGetLocalizedDescription(CFIndex errorCode);
 
+
+enum wkCAImageQueueFlags {
+    kWKCAImageQueueAsync = 1U << 0,
+    kWKCAImageQueueFill = 1U << 1,
+    kWKCAImageQueueProtected = 1U << 2,
+    kWKCAImageQueueUseCleanAperture = 1U << 3,
+    kWKCAImageQueueUseAspectRatio = 1U << 4,
+    kWKCAImageQueueLowQualityColor = 1U << 5,
+};
+
+enum wkWKCAImageQueueImageType {
+    kWKCAImageQueueNil = 1,
+    kWKCAImageQueueSurface,
+    kWKCAImageQueueBuffer,
+    kWKCAImageQueueIOSurface,
+};
+
+enum wkWKCAImageQueueImageFlags {
+    kWKCAImageQueueOpaque = 1U << 0,
+    kWKCAImageQueueFlush = 1U << 1,
+    kWKCAImageQueueWillFlush = 1U << 2,
+    kWKCAImageQueueFlipped = 1U << 3,
+    kWKCAImageQueueWaitGPU = 1U << 4,
+};
+
+typedef void (*wkCAImageQueueReleaseCallback)(unsigned int type, uint64_t id, void *info);
+CAImageQueueRef wkCAImageQueueCreate(uint32_t width, uint32_t height, uint32_t capacity);
+void wkCAImageQueueInvalidate(CAImageQueueRef iq);
+size_t wkCAImageQueueCollect(CAImageQueueRef iq);
+bool wkCAImageQueueInsertImage(CAImageQueueRef iq, CFTimeInterval t, unsigned int type, uint64_t id, uint32_t flags, wkCAImageQueueReleaseCallback release, void *info);
+uint64_t wkCAImageQueueRegisterPixelBuffer(CAImageQueueRef iq, void *data, size_t data_size, size_t rowbytes, size_t width, size_t height, OSType pixel_format, CFDictionaryRef attachments, uint32_t flags);
+void wkCAImageQueueSetFlags(CAImageQueueRef iq, uint32_t mask, uint32_t flags);
+uint32_t wkCAImageQueueGetFlags(CAImageQueueRef iq);
+CFTypeID wkCAImageQueueGetTypeID(void);
+
+WKCACFContext* wkCACFContextCreate();
+void wkCACFContextDestroy(WKCACFContext*);
+
+void wkCACFContextSetLayer(WKCACFContext*, CACFLayerRef);
+void wkCACFContextFlush(WKCACFContext*);
+
+void wkCACFContextInitializeD3DDevice(WKCACFContext*, IDirect3DDevice9*);
+void wkCACFContextReleaseD3DResources(WKCACFContext*);
+
+bool wkCACFContextBeginUpdate(WKCACFContext*, void* buffer, size_t bufferSize, CFTimeInterval time, const CGRect& bounds, const CGRect dirtyRects[], size_t dirtyRectCount);
+void wkCACFContextRenderUpdate(WKCACFContext*);
+void wkCACFContextFinishUpdate(WKCACFContext*);
+void wkCACFContextAddUpdateRect(WKCACFContext*, const CGRect&);
+
+WKCACFUpdateRectEnumerator* wkCACFContextCopyUpdateRectEnumerator(WKCACFContext*);
+const CGRect* wkCACFUpdateRectEnumeratorNextRect(WKCACFUpdateRectEnumerator*);
+void wkCACFUpdateRectEnumeratorRelease(WKCACFUpdateRectEnumerator*);
+
 #endif // WebKitSystemInterface_h