1ec3ed6a5ebf6f2c406d7bcf94b6bc34fcaeb976eepoger@google.com 2ec3ed6a5ebf6f2c406d7bcf94b6bc34fcaeb976eepoger@google.com/* 3ec3ed6a5ebf6f2c406d7bcf94b6bc34fcaeb976eepoger@google.com * Copyright 2006 The Android Open Source Project 4ec3ed6a5ebf6f2c406d7bcf94b6bc34fcaeb976eepoger@google.com * 5ec3ed6a5ebf6f2c406d7bcf94b6bc34fcaeb976eepoger@google.com * Use of this source code is governed by a BSD-style license that can be 6ec3ed6a5ebf6f2c406d7bcf94b6bc34fcaeb976eepoger@google.com * found in the LICENSE file. 7ec3ed6a5ebf6f2c406d7bcf94b6bc34fcaeb976eepoger@google.com */ 8ec3ed6a5ebf6f2c406d7bcf94b6bc34fcaeb976eepoger@google.com 98a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com 108a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com#ifndef SkTagList_DEFINED 118a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com#define SkTagList_DEFINED 128a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com 138a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com#include "SkTypes.h" 148a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com 158a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.comenum SkTagListEnum { 168a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com kListeners_SkTagList, 178a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com kViewLayout_SkTagList, 188a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com kViewArtist_SkTagList, 198a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com 208a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com kSkTagListCount 218a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com}; 228a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com 238a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.comstruct SkTagList { 248a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com SkTagList* fNext; 258a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com uint16_t fExtra16; 268a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com uint8_t fExtra8; 278a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com uint8_t fTag; 288a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com 298a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com SkTagList(U8CPU tag) : fTag(SkToU8(tag)) 308a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com { 318a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com SkASSERT(tag < kSkTagListCount); 328a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com fNext = NULL; 338a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com fExtra16 = 0; 348a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com fExtra8 = 0; 358a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com } 368a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com virtual ~SkTagList(); 378a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com 388a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com static SkTagList* Find(SkTagList* head, U8CPU tag); 398a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com static void DeleteTag(SkTagList** headptr, U8CPU tag); 408a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com static void DeleteAll(SkTagList* head); 418a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com}; 428a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com 438a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com#endif 44