Flutter Engine
The Flutter Engine
Classes | Macros | Functions
SkPictureData.h File Reference
#include "include/core/SkBitmap.h"
#include "include/core/SkData.h"
#include "include/core/SkDrawable.h"
#include "include/core/SkImage.h"
#include "include/core/SkPaint.h"
#include "include/core/SkPath.h"
#include "include/core/SkPicture.h"
#include "include/core/SkRect.h"
#include "include/core/SkRefCnt.h"
#include "include/core/SkTextBlob.h"
#include "include/core/SkTypes.h"
#include "include/core/SkVertices.h"
#include "include/private/base/SkTArray.h"
#include "include/private/chromium/Slug.h"
#include "src/core/SkPictureFlat.h"
#include "src/core/SkReadBuffer.h"
#include <cstdint>
#include <memory>

Go to the source code of this file.

Classes

struct  SkPictInfo
 
class  SkPictureData
 

Macros

#define SK_PICT_READER_TAG   SkSetFourByteTag('r', 'e', 'a', 'd')
 
#define SK_PICT_FACTORY_TAG   SkSetFourByteTag('f', 'a', 'c', 't')
 
#define SK_PICT_TYPEFACE_TAG   SkSetFourByteTag('t', 'p', 'f', 'c')
 
#define SK_PICT_PICTURE_TAG   SkSetFourByteTag('p', 'c', 't', 'r')
 
#define SK_PICT_DRAWABLE_TAG   SkSetFourByteTag('d', 'r', 'a', 'w')
 
#define SK_PICT_BUFFER_SIZE_TAG   SkSetFourByteTag('a', 'r', 'a', 'y')
 
#define SK_PICT_PAINT_BUFFER_TAG   SkSetFourByteTag('p', 'n', 't', ' ')
 
#define SK_PICT_PATH_BUFFER_TAG   SkSetFourByteTag('p', 't', 'h', ' ')
 
#define SK_PICT_TEXTBLOB_BUFFER_TAG   SkSetFourByteTag('b', 'l', 'o', 'b')
 
#define SK_PICT_SLUG_BUFFER_TAG   SkSetFourByteTag('s', 'l', 'u', 'g')
 
#define SK_PICT_VERTICES_BUFFER_TAG   SkSetFourByteTag('v', 'e', 'r', 't')
 
#define SK_PICT_IMAGE_BUFFER_TAG   SkSetFourByteTag('i', 'm', 'a', 'g')
 
#define SK_PICT_EOF_TAG   SkSetFourByteTag('e', 'o', 'f', ' ')
 

Functions

template<typename T >
Tread_index_base_1_or_null (SkReadBuffer *reader, const skia_private::TArray< sk_sp< T > > &array)
 

Macro Definition Documentation

◆ SK_PICT_BUFFER_SIZE_TAG

#define SK_PICT_BUFFER_SIZE_TAG   SkSetFourByteTag('a', 'r', 'a', 'y')

Definition at line 68 of file SkPictureData.h.

◆ SK_PICT_DRAWABLE_TAG

#define SK_PICT_DRAWABLE_TAG   SkSetFourByteTag('d', 'r', 'a', 'w')

Definition at line 65 of file SkPictureData.h.

◆ SK_PICT_EOF_TAG

#define SK_PICT_EOF_TAG   SkSetFourByteTag('e', 'o', 'f', ' ')

Definition at line 78 of file SkPictureData.h.

◆ SK_PICT_FACTORY_TAG

#define SK_PICT_FACTORY_TAG   SkSetFourByteTag('f', 'a', 'c', 't')

Definition at line 62 of file SkPictureData.h.

◆ SK_PICT_IMAGE_BUFFER_TAG

#define SK_PICT_IMAGE_BUFFER_TAG   SkSetFourByteTag('i', 'm', 'a', 'g')

Definition at line 75 of file SkPictureData.h.

◆ SK_PICT_PAINT_BUFFER_TAG

#define SK_PICT_PAINT_BUFFER_TAG   SkSetFourByteTag('p', 'n', 't', ' ')

Definition at line 70 of file SkPictureData.h.

◆ SK_PICT_PATH_BUFFER_TAG

#define SK_PICT_PATH_BUFFER_TAG   SkSetFourByteTag('p', 't', 'h', ' ')

Definition at line 71 of file SkPictureData.h.

◆ SK_PICT_PICTURE_TAG

#define SK_PICT_PICTURE_TAG   SkSetFourByteTag('p', 'c', 't', 'r')

Definition at line 64 of file SkPictureData.h.

◆ SK_PICT_READER_TAG

#define SK_PICT_READER_TAG   SkSetFourByteTag('r', 'e', 'a', 'd')

Definition at line 61 of file SkPictureData.h.

◆ SK_PICT_SLUG_BUFFER_TAG

#define SK_PICT_SLUG_BUFFER_TAG   SkSetFourByteTag('s', 'l', 'u', 'g')

Definition at line 73 of file SkPictureData.h.

◆ SK_PICT_TEXTBLOB_BUFFER_TAG

#define SK_PICT_TEXTBLOB_BUFFER_TAG   SkSetFourByteTag('b', 'l', 'o', 'b')

Definition at line 72 of file SkPictureData.h.

◆ SK_PICT_TYPEFACE_TAG

#define SK_PICT_TYPEFACE_TAG   SkSetFourByteTag('t', 'p', 'f', 'c')

Definition at line 63 of file SkPictureData.h.

◆ SK_PICT_VERTICES_BUFFER_TAG

#define SK_PICT_VERTICES_BUFFER_TAG   SkSetFourByteTag('v', 'e', 'r', 't')

Definition at line 74 of file SkPictureData.h.

Function Documentation

◆ read_index_base_1_or_null()

template<typename T >
T * read_index_base_1_or_null ( SkReadBuffer reader,
const skia_private::TArray< sk_sp< T > > &  array 
)

Definition at line 81 of file SkPictureData.h.

82 {
83 int index = reader->readInt();
84 return reader->validate(index > 0 && index <= array.size()) ? array[index - 1].get() : nullptr;
85}
bool validate(bool isValid)
Definition: SkReadBuffer.h:191
int32_t readInt()
int size() const
Definition: SkTArray.h:421