File indexing completed on 2025-01-05 04:01:14
0001 /* 0002 * SPDX-FileCopyrightText: 2019-2023 Mattia Basaglia <dev@dragon.best> 0003 * 0004 * SPDX-License-Identifier: GPL-3.0-or-later 0005 */ 0006 0007 #pragma once 0008 0009 #include <memory> 0010 #include <functional> 0011 0012 #include <QDir> 0013 0014 #include "io/base.hpp" 0015 0016 namespace glaxnimate::io::avd { 0017 0018 class AvdParser 0019 { 0020 private: 0021 0022 0023 public: 0024 /** 0025 * \throws SvgParseError on error 0026 */ 0027 AvdParser( 0028 QIODevice* device, 0029 const QDir& resource_path, 0030 model::Document* document, 0031 const std::function<void(const QString&)>& on_warning = {}, 0032 ImportExport* io = nullptr, 0033 QSize forced_size = {}, 0034 model::FrameTime default_time = 180 0035 ); 0036 0037 ~AvdParser(); 0038 0039 void parse_to_document(); 0040 0041 class Private; 0042 private: 0043 std::unique_ptr<Private> d; 0044 }; 0045 0046 } // namespace glaxnimate::io::avd