1cb93a386Sopenharmony_ci/* 2cb93a386Sopenharmony_ci * Copyright (c) Huawei Technologies Co., Ltd. 2023. All rights reserved. 3cb93a386Sopenharmony_ci * Description: Implementation for Css style parser. 4cb93a386Sopenharmony_ci * Create: 2023/4/25 5cb93a386Sopenharmony_ci */ 6cb93a386Sopenharmony_ci 7cb93a386Sopenharmony_ci#ifndef SkSVGXMLDOM_DEFINED 8cb93a386Sopenharmony_ci#define SkSVGXMLDOM_DEFINED 9cb93a386Sopenharmony_ci 10cb93a386Sopenharmony_ci#include "src/xml/SkDOM.h" 11cb93a386Sopenharmony_ci 12cb93a386Sopenharmony_ciclass SkSVGXMLDOM : public SkDOM { 13cb93a386Sopenharmony_cipublic: 14cb93a386Sopenharmony_ci using SkDOMNode = Node; 15cb93a386Sopenharmony_ci using SkDOMAttr = Attr; 16cb93a386Sopenharmony_ci 17cb93a386Sopenharmony_ci SkSVGXMLDOM() = default; 18cb93a386Sopenharmony_ci ~SkSVGXMLDOM() override = default; 19cb93a386Sopenharmony_ci 20cb93a386Sopenharmony_ci const Node* build(SkStream& docStream, uint64_t svgThemeColor); 21cb93a386Sopenharmony_ci 22cb93a386Sopenharmony_ci // override SkDom functions 23cb93a386Sopenharmony_ci const Node* build(SkStream& docStream) override; 24cb93a386Sopenharmony_ci const Node* copy(const SkDOM& dom, const Node* node) override; 25cb93a386Sopenharmony_ci SkXMLParser* beginParsing() override; 26cb93a386Sopenharmony_ciprivate: 27cb93a386Sopenharmony_ci // for pure color svg 28cb93a386Sopenharmony_ci uint64_t fSvgThemeColor {0}; 29cb93a386Sopenharmony_ci}; 30cb93a386Sopenharmony_ci#endif 31