Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2)

Side by Side Diff: tools/debugger/SkJsonWriteBuffer.h

Issue 1911963008: DNC - JSON of flattenables, with field names. Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: Add names to call sites Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 /*
2 * Copyright 2012 Google Inc.
3 *
4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file.
6 */
7
8 #ifndef SkJsonWriteBuffer_DEFINED
9 #define SkJsonWriteBuffer_DEFINED
10
11 #include "SkWriteBuffer.h"
12
13 #include "SkCanvas.h"
14 #include "SkTLazy.h"
15 #include "SkPath.h"
16 #include "SkRRect.h"
17 #include "SkString.h"
18 #include "SkTDArray.h"
19 #include "SkJSONCPP.h"
20 #include "UrlDataManager.h"
21
22 class SkJsonWriteBuffer : public SkWriteBuffer {
23 public:
24 SkJsonWriteBuffer() : fFieldCount(0) {}
25
26 void writeByteArray(const char* name, const void* data, size_t size) overrid e;
27 void writeBool(const char* name, bool value) override;
28 void writeScalar(const char* name, SkScalar value) override;
29 void writeScalarArray(const char* name, const SkScalar* value, uint32_t coun t) override;
30 void writeInt(const char* name, int32_t value) override;
31 void writeIntArray(const char* name, const int32_t* value, uint32_t count) o verride;
32 void writeUInt(const char* name, uint32_t value) override;
33 void write32(const char* name, int32_t value) override;
34 void writeString(const char* name, const char* value) override;
35 void writeEncodedString(const char* name, const void* value, size_t byteLeng th,
36 SkPaint::TextEncoding encoding) override;
37 void writeFunctionPtr(const char* name, void* ptr) override;
38
39 void writeFlattenable(const char* name, const SkFlattenable* flattenable) ov erride;
40 void writeColor(const char* name, const SkColor& color) override;
41 void writeColorArray(const char* name, const SkColor* color, uint32_t count) override;
42 void writePoint(const char* name, const SkPoint& point) override;
43 void writePointArray(const char* name, const SkPoint* point, uint32_t count) override;
44 void writeMatrix(const char* name, const SkMatrix& matrix) override;
45 void writeIRect(const char* name, const SkIRect& rect) override;
46 void writeRect(const char* name, const SkRect& rect) override;
47 void writeRegion(const char* name, const SkRegion& region) override;
48 void writePath(const char* name, const SkPath& path) override;
49 size_t writeStream(const char* name, SkStream* stream, size_t length) overri de;
50 void writeBitmap(const char* name, const SkBitmap& bitmap) override;
51 void writeImage(const char* name, const SkImage*) override;
52 void writeTypeface(const char* name, SkTypeface* typeface) override;
53 void writePaint(const char* name, const SkPaint& paint) override;
54
55 const Json::Value& getValue() const { return fJson; }
56
57 private:
58 void append(const char* name, const Json::Value& value);
59
60 Json::Value fJson;
61 uint32_t fFieldCount;
62 };
63
64 #endif
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698