| Index: skia/ext/skia_utils_base.cc
|
| ===================================================================
|
| --- skia/ext/skia_utils_base.cc (revision 0)
|
| +++ skia/ext/skia_utils_base.cc (revision 0)
|
| @@ -0,0 +1,53 @@
|
| +// Copyright (c) 2013 The Chromium Authors. All rights reserved.
|
| +// Use of this source code is governed by a BSD-style license that can be
|
| +// found in the LICENSE file.
|
| +
|
| +#include "skia/ext/skia_utils_base.h"
|
| +
|
| +namespace skia {
|
| +
|
| +bool ReadSkString(const Pickle& pickle, PickleIterator* iter, SkString* str) {
|
| + int reply_length;
|
| + const char* reply_text;
|
| +
|
| + if (!pickle.ReadData(iter, &reply_text, &reply_length))
|
| + return false;
|
| +
|
| + if (str)
|
| + str->set(reply_text, reply_length);
|
| + return true;
|
| +}
|
| +
|
| +bool ReadSkFontIdentity(const Pickle& pickle, PickleIterator* iter,
|
| + SkFontConfigInterface::FontIdentity* identity) {
|
| + uint32_t reply_id;
|
| + uint32_t reply_ttcIndex;
|
| + int reply_length;
|
| + const char* reply_text;
|
| +
|
| + if (!pickle.ReadUInt32(iter, &reply_id) ||
|
| + !pickle.ReadUInt32(iter, &reply_ttcIndex) ||
|
| + !pickle.ReadData(iter, &reply_text, &reply_length))
|
| + return false;
|
| +
|
| + if (identity) {
|
| + identity->fID = reply_id;
|
| + identity->fTTCIndex = reply_ttcIndex;
|
| + identity->fString.set(reply_text, reply_length);
|
| + }
|
| + return true;
|
| +}
|
| +
|
| +bool WriteSkString(Pickle* pickle, const SkString& str) {
|
| + return pickle->WriteData(str.c_str(), str.size());
|
| +}
|
| +
|
| +bool WriteSkFontIdentity(Pickle* pickle,
|
| + const SkFontConfigInterface::FontIdentity& identity) {
|
| + return pickle->WriteUInt32(identity.fID) &&
|
| + pickle->WriteUInt32(identity.fTTCIndex) &&
|
| + WriteSkString(pickle, identity.fString);
|
| +}
|
| +
|
| +} // namespace skia
|
| +
|
|
|