2 * Copyright 2015 Xamarin Inc.
3 * Copyright 2017 Microsoft Corporation. All rights reserved.
5 * Use of this source code is governed by a BSD-style license that can be
6 * found in the LICENSE file.
9 #include "SkManagedPixelSerializer.h"
11 #include "sk_managedpixelserializer.h"
12 #include "sk_types_priv.h"
15 static sk_managedpixelserializer_use_delegate gUse;
16 static sk_managedpixelserializer_encode_delegate gEncode;
19 static inline sk_managedpixelserializer_t* ToManagedPixelSerializer(SkManagedPixelSerializer* cserializer) {
20 return reinterpret_cast<sk_managedpixelserializer_t*>(cserializer);
24 bool dUse(SkManagedPixelSerializer* cserializer, const void* data, size_t len)
26 return gUse(ToManagedPixelSerializer(cserializer), data, len);
29 SkData* dEncode(SkManagedPixelSerializer* cserializer, const SkPixmap& pixmap)
31 return AsData(gEncode(ToManagedPixelSerializer(cserializer), ToPixmap(&pixmap)));
35 sk_managedpixelserializer_t* sk_managedpixelserializer_new ()
37 return ToManagedPixelSerializer (new SkManagedPixelSerializer ());
40 void sk_managedpixelserializer_set_delegates (
41 const sk_managedpixelserializer_use_delegate pUse,
42 const sk_managedpixelserializer_encode_delegate pEncode)
47 SkManagedPixelSerializer::setDelegates(dUse, dEncode);