27 size_t size()
const {
return fSize; }
29 bool isEmpty()
const {
return 0 == fSize; }
34 const void*
data()
const {
return fPtr; }
41 return reinterpret_cast<const uint8_t*
>(fPtr);
52 SkASSERT(this->unique());
63 size_t copyRange(
size_t offset,
size_t length,
void* buffer)
const;
69 bool equals(
const SkData* other)
const;
75 typedef void (*ReleaseProc)(
const void* ptr,
void* context);
80 static sk_sp<SkData> MakeWithCopy(
const void* data,
size_t length);
101 static sk_sp<SkData> MakeWithProc(
const void* ptr,
size_t length, ReleaseProc proc,
void* ctx);
108 return MakeWithProc(data, length, DummyReleaseProc,
nullptr);
115 static sk_sp<SkData> MakeFromMalloc(
const void* data,
size_t length);
162 ReleaseProc fReleaseProc;
163 void* fReleaseProcContext;
167 SkData(
const void* ptr,
size_t size, ReleaseProc,
void* context);
168 explicit SkData(
size_t size);
177 void*
operator new(size_t,
void* p) {
return p; }
178 void operator delete(
void* p) {
sk_free(p); }
181 friend SkData* sk_new_empty_data();
184 static sk_sp<SkData> PrivateNewWithCopy(
const void* srcOrNull,
size_t length);
186 static void DummyReleaseProc(
const void*,
void*);
const uint8_t * bytes() const
Like data(), returns a read-only ptr into the data, but in this case it is cast to uint8_t*...
Definition: SkData.h:40
SK_API void * sk_malloc_throw(size_t size)
Same as sk_malloc(), but hard coded to pass SK_MALLOC_THROW as the flag.
size_t size() const
Returns the number of bytes stored.
Definition: SkData.h:27
Definition: SkRefCnt.h:135
SK_API void sk_free(void *)
Free memory returned by sk_malloc().
void * writable_data()
USE WITH CAUTION.
Definition: SkData.h:49
SkData holds an immutable data buffer.
Definition: SkData.h:22
SkStream – abstraction for a source of bytes.
Definition: SkStream.h:38
const void * data() const
Returns the ptr to the data.
Definition: SkData.h:34
Definition: SkRefCnt.h:221
static sk_sp< SkData > MakeWithoutCopy(const void *data, size_t length)
Call this when the data parameter is already const and will outlive the lifetime of the SkData...
Definition: SkData.h:107