QXPBlockParser.h
Go to the documentation of this file.
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/*
* This file is part of the libqxp 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 QXPBLOCKPARSER_H_INCLUDED
#define QXPBLOCKPARSER_H_INCLUDED
#include "libqxp_utils.h"
namespace libqxp
{
class QXPHeader;
class QXPBlockParser
{
// disable copying
QXPBlockParser(const QXPBlockParser &other) = delete;
QXPBlockParser &operator=(const QXPBlockParser &other) = delete;
public:
QXPBlockParser(const std::shared_ptr<librevenge::RVNGInputStream> &input, const std::shared_ptr<QXPHeader> &header);
std::shared_ptr<librevenge::RVNGInputStream> getBlock(const uint32_t index);
std::shared_ptr<librevenge::RVNGInputStream> getChain(const uint32_t index);
private:
const std::shared_ptr<librevenge::RVNGInputStream> m_input;
const std::shared_ptr<QXPHeader> m_header;
const bool be; // big endian
const unsigned long m_length;
const uint32_t m_blockLength;
const uint32_t m_lastBlock;
};
}
#endif // QXPBLOCKPARSER_H_INCLUDED
/* vim:set shiftwidth=2 softtabstop=2 expandtab: */
libqxp::QXPBlockParser::m_header
const std::shared_ptr< QXPHeader > m_header
Definition QXPBlockParser.h:34
libqxp::QXPBlockParser::QXPBlockParser
QXPBlockParser(const QXPBlockParser &other)=delete
libqxp::QXPBlockParser::m_input
const std::shared_ptr< librevenge::RVNGInputStream > m_input
Definition QXPBlockParser.h:33
libqxp::QXPBlockParser::operator=
QXPBlockParser & operator=(const QXPBlockParser &other)=delete
libqxp::QXPBlockParser::getBlock
std::shared_ptr< librevenge::RVNGInputStream > getBlock(const uint32_t index)
Definition QXPBlockParser.cpp:56
libqxp::QXPBlockParser::m_length
const unsigned long m_length
Definition QXPBlockParser.h:37
libqxp::QXPBlockParser::m_blockLength
const uint32_t m_blockLength
Definition QXPBlockParser.h:38
libqxp::QXPBlockParser::QXPBlockParser
QXPBlockParser(const std::shared_ptr< librevenge::RVNGInputStream > &input, const std::shared_ptr< QXPHeader > &header)
libqxp::QXPBlockParser::m_lastBlock
const uint32_t m_lastBlock
Definition QXPBlockParser.h:39
libqxp::QXPBlockParser::getChain
std::shared_ptr< librevenge::RVNGInputStream > getChain(const uint32_t index)
Definition QXPBlockParser.cpp:69
libqxp::QXPBlockParser::be
const bool be
Definition QXPBlockParser.h:35
libqxp::QXPHeader
Definition QXPHeader.h:41
libqxp_utils.h
libqxp
Definition libqxp_utils.cpp:25