+Image::Image(const unsigned char *data, size_t length) {
+ CGDataProviderRef dpRef = CGDataProviderCreateWithData(NULL, data, length, NULL);
+ CGImageRef ref = CGImageCreateWithJPEGDataProvider(dpRef, NULL, false, kCGRenderingIntentDefault);
+ initWithImageRef(ref);
+ CGImageRelease(ref);
+}
+
+void Image::initWithImageRef(CGImageRef ref) {