/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ /* * This file is part of the libsdw project. * * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ #ifndef SDWPARSER_H #define SDWPARSER_H #include #include namespace libsdw { class SDWHeader; class SDWEncryption; class SDWParser { public: SDWParser(librevenge::RVNGInputStream *input, SDWHeader *header, SDWEncryption *encryption); virtual ~SDWParser(); virtual void parse(librevenge::RVNGTextInterface *documentInterface) = 0; protected: SDWHeader *getHeader() { return m_header; } librevenge::RVNGInputStream *getInput() { return m_input; } SDWEncryption *getEncryption() { return m_encryption; } private: SDWParser(const SDWParser &); SDWParser &operator=(const SDWParser &); librevenge::RVNGInputStream *m_input; SDWHeader *m_header; SDWEncryption *m_encryption; }; } // namespace libsdw #endif /* SDWPARSER_H */ /* vim:set shiftwidth=2 softtabstop=2 expandtab: */